INVENTORY CONTROL IN THE RETAIL SECTOR: A CASE STUDY OF CANADIAN TIRE PACIFIC ASSOCIATES by BRIAN ANTHONY KAPALKA B.Sc.(C.E.), The University of Manitoba, 1992 B.Sc., The University of Manitoba, 1992 A THESIS SUBMITTED IN PARTIAL FULFILLMENT OF THE REQUIREMENTS FOR THE DEGREE OF MASTER OF SCIENCE (BUSINESS ADMINISTRATION) in THE FACULTY OF GRADUATE STUDIES (Department of Commerce and Business Administration) We accept this thesis as conforming to the required standard THE UNIVERSITY OF BRITISH COLUMBIA April 1995 ® Brian Anthony Kapalka, 1995
153
Embed
INVENTORY CONTROL IN THE RETAIL SECTOR: A CASE STUDY …
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
I N V E N T O R Y C O N T R O L IN T H E R E T A I L S E C T O R A C A S E STUDY O F C A N A D I A N TIRE PACIFIC ASSOCIATES
by
BRIAN A N T H O N Y K A P A L K A
BSc(CE) The University of Manitoba 1992 BSc The University of Manitoba 1992
A THESIS SUBMITTED IN PARTIAL F U L F I L L M E N T OF
T H E REQUIREMENTS FOR T H E D E G R E E OF
MASTER OF SCIENCE (BUSINESS ADMINISTRATION)
in
T H E F A C U L T Y OF G R A D U A T E STUDIES
(Department of Commerce and Business Administration)
We accept this thesis as conforming to the required standard
T H E UNIVERSITY OF BRITISH COLUMBIA
April 1995
reg Brian Anthony Kapalka 1995
In presenting t h i s thesis i n p a r t i a l f u l f i l l m e n t of the requirements for an advanced degree at the University of B r i t i s h Columbia I agree that the Library s h a l l make i t f r e e l y a v a i l a b l e for reference and study I further agree that permission for extensive copying of t h i s thesis for scholarly purposes may be granted by the head of my department or by h i s or her representatives I t i s understood that copying or pub l i c a t i o n of t h i s thesis for f i n a n c i a l gain s h a l l not be allowed without my written permission
Department of Cotv^errg- ftni)gt ^osmecs AAnmna-WoAor
The University of B r i t i s h Columbia Vancouver Canada
Date ZS A y r A 9 9 5
Abstract
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia and a central warehouse in Burnaby In this thesis we formulate
a single-product single-location model of its inventory system as a first step in developing an
integrated interactive inventory control system Specifically we formulate a Markov chain
model for a periodic review system with a deterministic lead time and lost sales The model
utilizes empirical demand data to calculate the long-run average cost of inventory for a given
(sS) policy We then develop a heuristic that locates a near optimal policy quickly The
heuristic incorporates a constraint on the customer service level makes use of an updating
technique for the transition probability matrix and is based on assumptions regarding the
properties of the solution space Next we create a prototype of the interface that enables
managers to use the model interactively Finally we compare the existing inventory policy to
the optimal policy for each of 420 products sold at one of the stores This thesis finds that
Canadian Tire Pacific Associates is currently holding excessively large in-store inventory and
that it could reduce its cost of inventory by approximately 40 to 50 We estimate that
implementing optimal inventory control in the stores would result in annual savings of between
$55 and $7 million
ii
Table of Contents
Abstract ii
Table of Contents iii
List of Tables v
List of Figures vi
Acknowledgement vii
I INTRODUCTION 1
II T H E INVENTORY SYSTEM A T CANADIAN TIRE PACIFIC ASSOCIATES 8 A Background 8 B The Problem 11 C The Project 15 D The Demand Data 17 E The Cost Data 18
III M O D E L FORMULATION 20 A Terminology 20 B Assumptions 21 C A Markov Chain Model 22 D The Transition Probability Matrix 25 E The Steady State Probabilities 27 F The Cost of Inventory 29 G The Customer Service Level 31 H A Methodology for Evaluating an (sS) Policy 34
IV A N ALGORITHM FOR OBTAINING T H E OPTIMAL (sS) POLICY 35 A Introduction 35 B A Grid Search 36 C A Technique for Updating the Transition Probability Matrix 41
A new policy (s+mS) 41 A new policy (sS+m) 42 The modified algorithm 43
D A Lower Bound on S 45 E A Heuristic Search 48
V T H E INTERFACE 52
iii
VI RESULTS A N D SENSITIVITY ANALYSIS 55 A Comparison of Current Policies to Optimal Policies 55 B Sensitivity Analysis on the Ordering Cost and Holding Rate 62 C Sensitivity Analysis on the Demand Probability Mass Function 65
VII CONCLUSION 70
Afterword 73
Bibliography 74
Appendix A A Portion of the Sales File for Product 200001 a 30-amp
Inline Fuse 76
Appendix B Sample Distribution Files 77
Appendix C A Proof that the Limiting Distribution is Independent of the
Initial State 79
Appendix D A Measure for the Steady State Customer Service Level 83
Appendix E The Calculation of the Conditional Expected Demand Not Satisfied
During a Period of T Consecutive Days 86
Appendix F Justification of the Updating Technique for the New Policy (s+mS) 87
Appendix G Justification of the Updating Technique for the New Policy (sS+m) 92
Appendix H A Hypothetical Consultation 97
Appendix I The Source Code for the Interface Module 104
Appendix J The Source Code for the Main Module 119
Appendix K Current and Optimal Policies for Product Category 20 at Store 6 131
iv
List o f Tables
Table 1 Location and particulars of the 21 stores 10
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse 39
Table 3 Execution times of the algorithms for product 206917 a 6
solder connector 40
Table 4 Products with insufficient existing policies 56
Table 5 Products with the largest potential absolute savings 60
Table 6 A comparison of optimal policies to true optimal policies 63
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios 64
Table 8 True optimal and optimal policies for each demand scenario 66
v
List of Figures
Figure 1 A typical sample path of the process with a 4-day review period
and a 2-day lead time 24
Figure 2 The flow chart of the grid search algorithm 38
Figure 3 The flow chart of the grid search algorithm utilizing the updating
technique for the transition probability matrix 44
Figure 4 An evaluation of the lower bound Sm i n 47
Figure 5 The flow chart of the heuristic algorithm 50
Figure 6 The distribution of savings of optimal policies in (a) dollars and
(b) percentage of current cost 59
Figure A-1 The title screen 97
Figure A-2 The main menu 98
Figure A-3 Calculating the optimal policy and evaluating the current policy 99
Figure A-4 Displaying the results 100
Figure A-5 Entering an alternate policy 101
Figure A-6 The particulars of the alternate policy 102
Figure A-7 The main menu revisited 103
vi
Acknowledgement
The completion of this thesis was made possible by the encouragement and assistance
of a number of people
I would like to express my sincere appreciation to my thesis supervisor Professor
Martin Puterman for all of his many efforts on my behalf His help advice patience charity
and tolerance were very much appreciated
I would like to acknowledge Professor Hong Chen and Professor Garland Chow for their
time and input as members of my thesis committee In addition I must acknowledge the
assistance of PhD student Kaan Katircioglu for his insight and help on this project
I offer many thanks to Professor Tom Ross for his kindness and friendship during the
past few years especially during the writing of this work I must also thank his family for
adopting me on many holidays I still owe thanks to Professor Slobodan Simonovic at the
University of Manitoba for influencing me to attend graduate school in the first place and for
helping me to obtain funding
I cannot thank my parents enough for their never-ending support both emotional and
financial Also to my friends especially Cathy Dave Lisa Steve and the Philbuds thanks
for giving me a life off campus and for picking up many a tab - the next one is on me
I would like to give special thanks to my good friend and fellow MSc student Paul
Crookshanks for allowing me to bounce ideas off of him and for being such a procrastinator
that despite my finishing a year late I only lost by two days
Financial assistance received from the Natural Science and Engineering Research
Council (NSERC) and from Canadian Tire Pacific Associates was greatly appreciated
vii
I INTRODUCTION
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
In presenting t h i s thesis i n p a r t i a l f u l f i l l m e n t of the requirements for an advanced degree at the University of B r i t i s h Columbia I agree that the Library s h a l l make i t f r e e l y a v a i l a b l e for reference and study I further agree that permission for extensive copying of t h i s thesis for scholarly purposes may be granted by the head of my department or by h i s or her representatives I t i s understood that copying or pub l i c a t i o n of t h i s thesis for f i n a n c i a l gain s h a l l not be allowed without my written permission
Department of Cotv^errg- ftni)gt ^osmecs AAnmna-WoAor
The University of B r i t i s h Columbia Vancouver Canada
Date ZS A y r A 9 9 5
Abstract
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia and a central warehouse in Burnaby In this thesis we formulate
a single-product single-location model of its inventory system as a first step in developing an
integrated interactive inventory control system Specifically we formulate a Markov chain
model for a periodic review system with a deterministic lead time and lost sales The model
utilizes empirical demand data to calculate the long-run average cost of inventory for a given
(sS) policy We then develop a heuristic that locates a near optimal policy quickly The
heuristic incorporates a constraint on the customer service level makes use of an updating
technique for the transition probability matrix and is based on assumptions regarding the
properties of the solution space Next we create a prototype of the interface that enables
managers to use the model interactively Finally we compare the existing inventory policy to
the optimal policy for each of 420 products sold at one of the stores This thesis finds that
Canadian Tire Pacific Associates is currently holding excessively large in-store inventory and
that it could reduce its cost of inventory by approximately 40 to 50 We estimate that
implementing optimal inventory control in the stores would result in annual savings of between
$55 and $7 million
ii
Table of Contents
Abstract ii
Table of Contents iii
List of Tables v
List of Figures vi
Acknowledgement vii
I INTRODUCTION 1
II T H E INVENTORY SYSTEM A T CANADIAN TIRE PACIFIC ASSOCIATES 8 A Background 8 B The Problem 11 C The Project 15 D The Demand Data 17 E The Cost Data 18
III M O D E L FORMULATION 20 A Terminology 20 B Assumptions 21 C A Markov Chain Model 22 D The Transition Probability Matrix 25 E The Steady State Probabilities 27 F The Cost of Inventory 29 G The Customer Service Level 31 H A Methodology for Evaluating an (sS) Policy 34
IV A N ALGORITHM FOR OBTAINING T H E OPTIMAL (sS) POLICY 35 A Introduction 35 B A Grid Search 36 C A Technique for Updating the Transition Probability Matrix 41
A new policy (s+mS) 41 A new policy (sS+m) 42 The modified algorithm 43
D A Lower Bound on S 45 E A Heuristic Search 48
V T H E INTERFACE 52
iii
VI RESULTS A N D SENSITIVITY ANALYSIS 55 A Comparison of Current Policies to Optimal Policies 55 B Sensitivity Analysis on the Ordering Cost and Holding Rate 62 C Sensitivity Analysis on the Demand Probability Mass Function 65
VII CONCLUSION 70
Afterword 73
Bibliography 74
Appendix A A Portion of the Sales File for Product 200001 a 30-amp
Inline Fuse 76
Appendix B Sample Distribution Files 77
Appendix C A Proof that the Limiting Distribution is Independent of the
Initial State 79
Appendix D A Measure for the Steady State Customer Service Level 83
Appendix E The Calculation of the Conditional Expected Demand Not Satisfied
During a Period of T Consecutive Days 86
Appendix F Justification of the Updating Technique for the New Policy (s+mS) 87
Appendix G Justification of the Updating Technique for the New Policy (sS+m) 92
Appendix H A Hypothetical Consultation 97
Appendix I The Source Code for the Interface Module 104
Appendix J The Source Code for the Main Module 119
Appendix K Current and Optimal Policies for Product Category 20 at Store 6 131
iv
List o f Tables
Table 1 Location and particulars of the 21 stores 10
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse 39
Table 3 Execution times of the algorithms for product 206917 a 6
solder connector 40
Table 4 Products with insufficient existing policies 56
Table 5 Products with the largest potential absolute savings 60
Table 6 A comparison of optimal policies to true optimal policies 63
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios 64
Table 8 True optimal and optimal policies for each demand scenario 66
v
List of Figures
Figure 1 A typical sample path of the process with a 4-day review period
and a 2-day lead time 24
Figure 2 The flow chart of the grid search algorithm 38
Figure 3 The flow chart of the grid search algorithm utilizing the updating
technique for the transition probability matrix 44
Figure 4 An evaluation of the lower bound Sm i n 47
Figure 5 The flow chart of the heuristic algorithm 50
Figure 6 The distribution of savings of optimal policies in (a) dollars and
(b) percentage of current cost 59
Figure A-1 The title screen 97
Figure A-2 The main menu 98
Figure A-3 Calculating the optimal policy and evaluating the current policy 99
Figure A-4 Displaying the results 100
Figure A-5 Entering an alternate policy 101
Figure A-6 The particulars of the alternate policy 102
Figure A-7 The main menu revisited 103
vi
Acknowledgement
The completion of this thesis was made possible by the encouragement and assistance
of a number of people
I would like to express my sincere appreciation to my thesis supervisor Professor
Martin Puterman for all of his many efforts on my behalf His help advice patience charity
and tolerance were very much appreciated
I would like to acknowledge Professor Hong Chen and Professor Garland Chow for their
time and input as members of my thesis committee In addition I must acknowledge the
assistance of PhD student Kaan Katircioglu for his insight and help on this project
I offer many thanks to Professor Tom Ross for his kindness and friendship during the
past few years especially during the writing of this work I must also thank his family for
adopting me on many holidays I still owe thanks to Professor Slobodan Simonovic at the
University of Manitoba for influencing me to attend graduate school in the first place and for
helping me to obtain funding
I cannot thank my parents enough for their never-ending support both emotional and
financial Also to my friends especially Cathy Dave Lisa Steve and the Philbuds thanks
for giving me a life off campus and for picking up many a tab - the next one is on me
I would like to give special thanks to my good friend and fellow MSc student Paul
Crookshanks for allowing me to bounce ideas off of him and for being such a procrastinator
that despite my finishing a year late I only lost by two days
Financial assistance received from the Natural Science and Engineering Research
Council (NSERC) and from Canadian Tire Pacific Associates was greatly appreciated
vii
I INTRODUCTION
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia and a central warehouse in Burnaby In this thesis we formulate
a single-product single-location model of its inventory system as a first step in developing an
integrated interactive inventory control system Specifically we formulate a Markov chain
model for a periodic review system with a deterministic lead time and lost sales The model
utilizes empirical demand data to calculate the long-run average cost of inventory for a given
(sS) policy We then develop a heuristic that locates a near optimal policy quickly The
heuristic incorporates a constraint on the customer service level makes use of an updating
technique for the transition probability matrix and is based on assumptions regarding the
properties of the solution space Next we create a prototype of the interface that enables
managers to use the model interactively Finally we compare the existing inventory policy to
the optimal policy for each of 420 products sold at one of the stores This thesis finds that
Canadian Tire Pacific Associates is currently holding excessively large in-store inventory and
that it could reduce its cost of inventory by approximately 40 to 50 We estimate that
implementing optimal inventory control in the stores would result in annual savings of between
$55 and $7 million
ii
Table of Contents
Abstract ii
Table of Contents iii
List of Tables v
List of Figures vi
Acknowledgement vii
I INTRODUCTION 1
II T H E INVENTORY SYSTEM A T CANADIAN TIRE PACIFIC ASSOCIATES 8 A Background 8 B The Problem 11 C The Project 15 D The Demand Data 17 E The Cost Data 18
III M O D E L FORMULATION 20 A Terminology 20 B Assumptions 21 C A Markov Chain Model 22 D The Transition Probability Matrix 25 E The Steady State Probabilities 27 F The Cost of Inventory 29 G The Customer Service Level 31 H A Methodology for Evaluating an (sS) Policy 34
IV A N ALGORITHM FOR OBTAINING T H E OPTIMAL (sS) POLICY 35 A Introduction 35 B A Grid Search 36 C A Technique for Updating the Transition Probability Matrix 41
A new policy (s+mS) 41 A new policy (sS+m) 42 The modified algorithm 43
D A Lower Bound on S 45 E A Heuristic Search 48
V T H E INTERFACE 52
iii
VI RESULTS A N D SENSITIVITY ANALYSIS 55 A Comparison of Current Policies to Optimal Policies 55 B Sensitivity Analysis on the Ordering Cost and Holding Rate 62 C Sensitivity Analysis on the Demand Probability Mass Function 65
VII CONCLUSION 70
Afterword 73
Bibliography 74
Appendix A A Portion of the Sales File for Product 200001 a 30-amp
Inline Fuse 76
Appendix B Sample Distribution Files 77
Appendix C A Proof that the Limiting Distribution is Independent of the
Initial State 79
Appendix D A Measure for the Steady State Customer Service Level 83
Appendix E The Calculation of the Conditional Expected Demand Not Satisfied
During a Period of T Consecutive Days 86
Appendix F Justification of the Updating Technique for the New Policy (s+mS) 87
Appendix G Justification of the Updating Technique for the New Policy (sS+m) 92
Appendix H A Hypothetical Consultation 97
Appendix I The Source Code for the Interface Module 104
Appendix J The Source Code for the Main Module 119
Appendix K Current and Optimal Policies for Product Category 20 at Store 6 131
iv
List o f Tables
Table 1 Location and particulars of the 21 stores 10
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse 39
Table 3 Execution times of the algorithms for product 206917 a 6
solder connector 40
Table 4 Products with insufficient existing policies 56
Table 5 Products with the largest potential absolute savings 60
Table 6 A comparison of optimal policies to true optimal policies 63
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios 64
Table 8 True optimal and optimal policies for each demand scenario 66
v
List of Figures
Figure 1 A typical sample path of the process with a 4-day review period
and a 2-day lead time 24
Figure 2 The flow chart of the grid search algorithm 38
Figure 3 The flow chart of the grid search algorithm utilizing the updating
technique for the transition probability matrix 44
Figure 4 An evaluation of the lower bound Sm i n 47
Figure 5 The flow chart of the heuristic algorithm 50
Figure 6 The distribution of savings of optimal policies in (a) dollars and
(b) percentage of current cost 59
Figure A-1 The title screen 97
Figure A-2 The main menu 98
Figure A-3 Calculating the optimal policy and evaluating the current policy 99
Figure A-4 Displaying the results 100
Figure A-5 Entering an alternate policy 101
Figure A-6 The particulars of the alternate policy 102
Figure A-7 The main menu revisited 103
vi
Acknowledgement
The completion of this thesis was made possible by the encouragement and assistance
of a number of people
I would like to express my sincere appreciation to my thesis supervisor Professor
Martin Puterman for all of his many efforts on my behalf His help advice patience charity
and tolerance were very much appreciated
I would like to acknowledge Professor Hong Chen and Professor Garland Chow for their
time and input as members of my thesis committee In addition I must acknowledge the
assistance of PhD student Kaan Katircioglu for his insight and help on this project
I offer many thanks to Professor Tom Ross for his kindness and friendship during the
past few years especially during the writing of this work I must also thank his family for
adopting me on many holidays I still owe thanks to Professor Slobodan Simonovic at the
University of Manitoba for influencing me to attend graduate school in the first place and for
helping me to obtain funding
I cannot thank my parents enough for their never-ending support both emotional and
financial Also to my friends especially Cathy Dave Lisa Steve and the Philbuds thanks
for giving me a life off campus and for picking up many a tab - the next one is on me
I would like to give special thanks to my good friend and fellow MSc student Paul
Crookshanks for allowing me to bounce ideas off of him and for being such a procrastinator
that despite my finishing a year late I only lost by two days
Financial assistance received from the Natural Science and Engineering Research
Council (NSERC) and from Canadian Tire Pacific Associates was greatly appreciated
vii
I INTRODUCTION
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
II T H E INVENTORY SYSTEM A T CANADIAN TIRE PACIFIC ASSOCIATES 8 A Background 8 B The Problem 11 C The Project 15 D The Demand Data 17 E The Cost Data 18
III M O D E L FORMULATION 20 A Terminology 20 B Assumptions 21 C A Markov Chain Model 22 D The Transition Probability Matrix 25 E The Steady State Probabilities 27 F The Cost of Inventory 29 G The Customer Service Level 31 H A Methodology for Evaluating an (sS) Policy 34
IV A N ALGORITHM FOR OBTAINING T H E OPTIMAL (sS) POLICY 35 A Introduction 35 B A Grid Search 36 C A Technique for Updating the Transition Probability Matrix 41
A new policy (s+mS) 41 A new policy (sS+m) 42 The modified algorithm 43
D A Lower Bound on S 45 E A Heuristic Search 48
V T H E INTERFACE 52
iii
VI RESULTS A N D SENSITIVITY ANALYSIS 55 A Comparison of Current Policies to Optimal Policies 55 B Sensitivity Analysis on the Ordering Cost and Holding Rate 62 C Sensitivity Analysis on the Demand Probability Mass Function 65
VII CONCLUSION 70
Afterword 73
Bibliography 74
Appendix A A Portion of the Sales File for Product 200001 a 30-amp
Inline Fuse 76
Appendix B Sample Distribution Files 77
Appendix C A Proof that the Limiting Distribution is Independent of the
Initial State 79
Appendix D A Measure for the Steady State Customer Service Level 83
Appendix E The Calculation of the Conditional Expected Demand Not Satisfied
During a Period of T Consecutive Days 86
Appendix F Justification of the Updating Technique for the New Policy (s+mS) 87
Appendix G Justification of the Updating Technique for the New Policy (sS+m) 92
Appendix H A Hypothetical Consultation 97
Appendix I The Source Code for the Interface Module 104
Appendix J The Source Code for the Main Module 119
Appendix K Current and Optimal Policies for Product Category 20 at Store 6 131
iv
List o f Tables
Table 1 Location and particulars of the 21 stores 10
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse 39
Table 3 Execution times of the algorithms for product 206917 a 6
solder connector 40
Table 4 Products with insufficient existing policies 56
Table 5 Products with the largest potential absolute savings 60
Table 6 A comparison of optimal policies to true optimal policies 63
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios 64
Table 8 True optimal and optimal policies for each demand scenario 66
v
List of Figures
Figure 1 A typical sample path of the process with a 4-day review period
and a 2-day lead time 24
Figure 2 The flow chart of the grid search algorithm 38
Figure 3 The flow chart of the grid search algorithm utilizing the updating
technique for the transition probability matrix 44
Figure 4 An evaluation of the lower bound Sm i n 47
Figure 5 The flow chart of the heuristic algorithm 50
Figure 6 The distribution of savings of optimal policies in (a) dollars and
(b) percentage of current cost 59
Figure A-1 The title screen 97
Figure A-2 The main menu 98
Figure A-3 Calculating the optimal policy and evaluating the current policy 99
Figure A-4 Displaying the results 100
Figure A-5 Entering an alternate policy 101
Figure A-6 The particulars of the alternate policy 102
Figure A-7 The main menu revisited 103
vi
Acknowledgement
The completion of this thesis was made possible by the encouragement and assistance
of a number of people
I would like to express my sincere appreciation to my thesis supervisor Professor
Martin Puterman for all of his many efforts on my behalf His help advice patience charity
and tolerance were very much appreciated
I would like to acknowledge Professor Hong Chen and Professor Garland Chow for their
time and input as members of my thesis committee In addition I must acknowledge the
assistance of PhD student Kaan Katircioglu for his insight and help on this project
I offer many thanks to Professor Tom Ross for his kindness and friendship during the
past few years especially during the writing of this work I must also thank his family for
adopting me on many holidays I still owe thanks to Professor Slobodan Simonovic at the
University of Manitoba for influencing me to attend graduate school in the first place and for
helping me to obtain funding
I cannot thank my parents enough for their never-ending support both emotional and
financial Also to my friends especially Cathy Dave Lisa Steve and the Philbuds thanks
for giving me a life off campus and for picking up many a tab - the next one is on me
I would like to give special thanks to my good friend and fellow MSc student Paul
Crookshanks for allowing me to bounce ideas off of him and for being such a procrastinator
that despite my finishing a year late I only lost by two days
Financial assistance received from the Natural Science and Engineering Research
Council (NSERC) and from Canadian Tire Pacific Associates was greatly appreciated
vii
I INTRODUCTION
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
VI RESULTS A N D SENSITIVITY ANALYSIS 55 A Comparison of Current Policies to Optimal Policies 55 B Sensitivity Analysis on the Ordering Cost and Holding Rate 62 C Sensitivity Analysis on the Demand Probability Mass Function 65
VII CONCLUSION 70
Afterword 73
Bibliography 74
Appendix A A Portion of the Sales File for Product 200001 a 30-amp
Inline Fuse 76
Appendix B Sample Distribution Files 77
Appendix C A Proof that the Limiting Distribution is Independent of the
Initial State 79
Appendix D A Measure for the Steady State Customer Service Level 83
Appendix E The Calculation of the Conditional Expected Demand Not Satisfied
During a Period of T Consecutive Days 86
Appendix F Justification of the Updating Technique for the New Policy (s+mS) 87
Appendix G Justification of the Updating Technique for the New Policy (sS+m) 92
Appendix H A Hypothetical Consultation 97
Appendix I The Source Code for the Interface Module 104
Appendix J The Source Code for the Main Module 119
Appendix K Current and Optimal Policies for Product Category 20 at Store 6 131
iv
List o f Tables
Table 1 Location and particulars of the 21 stores 10
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse 39
Table 3 Execution times of the algorithms for product 206917 a 6
solder connector 40
Table 4 Products with insufficient existing policies 56
Table 5 Products with the largest potential absolute savings 60
Table 6 A comparison of optimal policies to true optimal policies 63
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios 64
Table 8 True optimal and optimal policies for each demand scenario 66
v
List of Figures
Figure 1 A typical sample path of the process with a 4-day review period
and a 2-day lead time 24
Figure 2 The flow chart of the grid search algorithm 38
Figure 3 The flow chart of the grid search algorithm utilizing the updating
technique for the transition probability matrix 44
Figure 4 An evaluation of the lower bound Sm i n 47
Figure 5 The flow chart of the heuristic algorithm 50
Figure 6 The distribution of savings of optimal policies in (a) dollars and
(b) percentage of current cost 59
Figure A-1 The title screen 97
Figure A-2 The main menu 98
Figure A-3 Calculating the optimal policy and evaluating the current policy 99
Figure A-4 Displaying the results 100
Figure A-5 Entering an alternate policy 101
Figure A-6 The particulars of the alternate policy 102
Figure A-7 The main menu revisited 103
vi
Acknowledgement
The completion of this thesis was made possible by the encouragement and assistance
of a number of people
I would like to express my sincere appreciation to my thesis supervisor Professor
Martin Puterman for all of his many efforts on my behalf His help advice patience charity
and tolerance were very much appreciated
I would like to acknowledge Professor Hong Chen and Professor Garland Chow for their
time and input as members of my thesis committee In addition I must acknowledge the
assistance of PhD student Kaan Katircioglu for his insight and help on this project
I offer many thanks to Professor Tom Ross for his kindness and friendship during the
past few years especially during the writing of this work I must also thank his family for
adopting me on many holidays I still owe thanks to Professor Slobodan Simonovic at the
University of Manitoba for influencing me to attend graduate school in the first place and for
helping me to obtain funding
I cannot thank my parents enough for their never-ending support both emotional and
financial Also to my friends especially Cathy Dave Lisa Steve and the Philbuds thanks
for giving me a life off campus and for picking up many a tab - the next one is on me
I would like to give special thanks to my good friend and fellow MSc student Paul
Crookshanks for allowing me to bounce ideas off of him and for being such a procrastinator
that despite my finishing a year late I only lost by two days
Financial assistance received from the Natural Science and Engineering Research
Council (NSERC) and from Canadian Tire Pacific Associates was greatly appreciated
vii
I INTRODUCTION
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
Table 1 Location and particulars of the 21 stores 10
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse 39
Table 3 Execution times of the algorithms for product 206917 a 6
solder connector 40
Table 4 Products with insufficient existing policies 56
Table 5 Products with the largest potential absolute savings 60
Table 6 A comparison of optimal policies to true optimal policies 63
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios 64
Table 8 True optimal and optimal policies for each demand scenario 66
v
List of Figures
Figure 1 A typical sample path of the process with a 4-day review period
and a 2-day lead time 24
Figure 2 The flow chart of the grid search algorithm 38
Figure 3 The flow chart of the grid search algorithm utilizing the updating
technique for the transition probability matrix 44
Figure 4 An evaluation of the lower bound Sm i n 47
Figure 5 The flow chart of the heuristic algorithm 50
Figure 6 The distribution of savings of optimal policies in (a) dollars and
(b) percentage of current cost 59
Figure A-1 The title screen 97
Figure A-2 The main menu 98
Figure A-3 Calculating the optimal policy and evaluating the current policy 99
Figure A-4 Displaying the results 100
Figure A-5 Entering an alternate policy 101
Figure A-6 The particulars of the alternate policy 102
Figure A-7 The main menu revisited 103
vi
Acknowledgement
The completion of this thesis was made possible by the encouragement and assistance
of a number of people
I would like to express my sincere appreciation to my thesis supervisor Professor
Martin Puterman for all of his many efforts on my behalf His help advice patience charity
and tolerance were very much appreciated
I would like to acknowledge Professor Hong Chen and Professor Garland Chow for their
time and input as members of my thesis committee In addition I must acknowledge the
assistance of PhD student Kaan Katircioglu for his insight and help on this project
I offer many thanks to Professor Tom Ross for his kindness and friendship during the
past few years especially during the writing of this work I must also thank his family for
adopting me on many holidays I still owe thanks to Professor Slobodan Simonovic at the
University of Manitoba for influencing me to attend graduate school in the first place and for
helping me to obtain funding
I cannot thank my parents enough for their never-ending support both emotional and
financial Also to my friends especially Cathy Dave Lisa Steve and the Philbuds thanks
for giving me a life off campus and for picking up many a tab - the next one is on me
I would like to give special thanks to my good friend and fellow MSc student Paul
Crookshanks for allowing me to bounce ideas off of him and for being such a procrastinator
that despite my finishing a year late I only lost by two days
Financial assistance received from the Natural Science and Engineering Research
Council (NSERC) and from Canadian Tire Pacific Associates was greatly appreciated
vii
I INTRODUCTION
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
Figure 1 A typical sample path of the process with a 4-day review period
and a 2-day lead time 24
Figure 2 The flow chart of the grid search algorithm 38
Figure 3 The flow chart of the grid search algorithm utilizing the updating
technique for the transition probability matrix 44
Figure 4 An evaluation of the lower bound Sm i n 47
Figure 5 The flow chart of the heuristic algorithm 50
Figure 6 The distribution of savings of optimal policies in (a) dollars and
(b) percentage of current cost 59
Figure A-1 The title screen 97
Figure A-2 The main menu 98
Figure A-3 Calculating the optimal policy and evaluating the current policy 99
Figure A-4 Displaying the results 100
Figure A-5 Entering an alternate policy 101
Figure A-6 The particulars of the alternate policy 102
Figure A-7 The main menu revisited 103
vi
Acknowledgement
The completion of this thesis was made possible by the encouragement and assistance
of a number of people
I would like to express my sincere appreciation to my thesis supervisor Professor
Martin Puterman for all of his many efforts on my behalf His help advice patience charity
and tolerance were very much appreciated
I would like to acknowledge Professor Hong Chen and Professor Garland Chow for their
time and input as members of my thesis committee In addition I must acknowledge the
assistance of PhD student Kaan Katircioglu for his insight and help on this project
I offer many thanks to Professor Tom Ross for his kindness and friendship during the
past few years especially during the writing of this work I must also thank his family for
adopting me on many holidays I still owe thanks to Professor Slobodan Simonovic at the
University of Manitoba for influencing me to attend graduate school in the first place and for
helping me to obtain funding
I cannot thank my parents enough for their never-ending support both emotional and
financial Also to my friends especially Cathy Dave Lisa Steve and the Philbuds thanks
for giving me a life off campus and for picking up many a tab - the next one is on me
I would like to give special thanks to my good friend and fellow MSc student Paul
Crookshanks for allowing me to bounce ideas off of him and for being such a procrastinator
that despite my finishing a year late I only lost by two days
Financial assistance received from the Natural Science and Engineering Research
Council (NSERC) and from Canadian Tire Pacific Associates was greatly appreciated
vii
I INTRODUCTION
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
The completion of this thesis was made possible by the encouragement and assistance
of a number of people
I would like to express my sincere appreciation to my thesis supervisor Professor
Martin Puterman for all of his many efforts on my behalf His help advice patience charity
and tolerance were very much appreciated
I would like to acknowledge Professor Hong Chen and Professor Garland Chow for their
time and input as members of my thesis committee In addition I must acknowledge the
assistance of PhD student Kaan Katircioglu for his insight and help on this project
I offer many thanks to Professor Tom Ross for his kindness and friendship during the
past few years especially during the writing of this work I must also thank his family for
adopting me on many holidays I still owe thanks to Professor Slobodan Simonovic at the
University of Manitoba for influencing me to attend graduate school in the first place and for
helping me to obtain funding
I cannot thank my parents enough for their never-ending support both emotional and
financial Also to my friends especially Cathy Dave Lisa Steve and the Philbuds thanks
for giving me a life off campus and for picking up many a tab - the next one is on me
I would like to give special thanks to my good friend and fellow MSc student Paul
Crookshanks for allowing me to bounce ideas off of him and for being such a procrastinator
that despite my finishing a year late I only lost by two days
Financial assistance received from the Natural Science and Engineering Research
Council (NSERC) and from Canadian Tire Pacific Associates was greatly appreciated
vii
I INTRODUCTION
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
The importance of inventory management has grown significantly over the years
especially since the turn of this century In colonial times large inventories were viewed as
signs of wealth and therefore merchants and policy makers were not overly concerned with
controlling inventory However during the economic collapse of the 1930s managers began
to perceive the risks associated with holding large inventories As a result managers
emphasized rapid rates of inventory turnover (Silver and Peterson 1985) Following the
Second World War Arrow Harris and Marschak (1951) and Dvoretzky Kiefer and
Wolfowitz (1952ab) laid the basis for future developments in mathematical inventory theory
Shortly thereafter new inventory control methodologies were widely applied in the private
manufacturing sector More recently when inflation and interest rates soared during the 1970s
many organizations were forced to rethink their inventory strategies yet again Today the
control of inventory is a problem common to all organizations in any sector of the economy
Sir Graham Day chairman of Britains Cadbury-Schweppes P C L expressed this sentiment
when he stated I believe the easiest money any business having any inventory can save lies
with the minimization of that inventory (Day 1992) Lee and Nahmias (1993) and Silver and
Peterson (1985) provide a more detailed history of inventory management and control
Most inventory problems in the retail sector involve the control and management of a
large number of different products Ideally the inventory policies should be determined for all
products on a system-wide basis however because the number of products is often in the tens
of thousands formulating a model to do so is impractical Therefore single-product models
are frequently used in practice to determine policies for products separately (Lee and Nahmias
1993) Lee and Nahmias (1993) and Silver and Peterson (1985) provide a good overview of
1
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
single-product single-location models for a more complete review of the literature we refer
to them
The degree of complexity of a single-product model depends largely on the assumptions
made regarding the demand cost structure and physical characteristics of the inventory system
For example demand can be either deterministic meaning it is known with absolute certainty
or stochastic meaning it is unknown but follows a known probability distribution
Deterministic models tend to be relatively simple yet useful such as the basic EOQ model
However future demand is seldom known with certainty in practice and therefore the use of
these simple models is limited As a result the majority of research in inventory has focused
on stochastic demand models (Lee and Nahmias 1993)
Because the objective of most inventory models is to minimize the cost of inventory
assumptions regarding the structure of the cost are very important also Generally speaking
the cost of inventory has four components the purchaseproduction cost the orderingsetup
cost the holding cost and the shortage cost1 Each of these costs can be fixed proportional
nonlinear or some complex combination of these Further because nearly all inventory
problems require decisions be made sequentially over a period of time the costs can be either
discounted or averaged In the former case a discount factor is included in the cost function
in order to account for the time value of money However since most inventory problems are
on-going the long-run average cost is usually minimized (Lee and Nahmias 1993) In
practice this is achieved by minimizing the expected cost per time period under steady state
conditions
Finally the physical characteristics of the system are important in determining the
1 The cost of a stockout is often very difficult to estimate in practice As a result service levels are frequently used in its place When this is done a constraint is included in the model
2
complexity of the model For example the review process can be either continuous in which
case the inventory is reviewed continuously and orders are placed as soon as the stock reaches
a certain level or periodic in which case the inventory is reviewed at regular intervals and
orders can be placed only at those fixed times Also excess demand can be fully backordered
as is common in many manufacturing and wholesale systems completely lost as is common
in most retail environments or some combination of the two Lead time assumptions are also
important models with lead times are more complex than those in which the supply of
inventory is assumed to be instantaneous
Although the literature is dominated by single-product models (Lee and Nahmias 1993)
much recent work has focused on extending those models to multiple-product problems
However multiple-product models are inherently more complex than the simple-product
models In fact no efficient algorithms are currently available for determining fully optimal
strategies for most multiple-product problems (Federgruen 1993) As a result research has
focused on the development of easily computable approximation techniques Muckstadt and
Roundy (1993) provide a good overview of multiple-product andor multiple-location models
with deterministic demand although emphasis is placed on models for production and
distribution Federgruen (1993) extends the discussion to consider these models under uncertain
demand and also provides a complete list of references on the subject Silver and Peterson
(1985) discuss models for coordinated replenishments for both deterministic and stochastic
demand
In this thesis we examine the inventory system at Canadian Tire Pacific Associates
owner of 21 retail stores and a central warehouse Although this is a multiple-product
multiple-location single-warehouse problem and strictly speaking should be modelled as such
we analyze the inventory problem on a product-by-product and store-by-store basis We believe
3
that this simpler single-product single-location model captures the essentials of the problem for
two reasons First the coordination of replenishments for products andor locations is most
advantageous when significant savings are possible because of high first order costs and low
marginal costs for placing subsequent orders However because of the large number of
products and the physical distribution system in this problem trucks are dispatched to stores
on a regular basis Therefore the benefits of coordinating replenishments for this problem are
negligible Second we believe that controlling in-store inventory alone can result in substantial
savings to Canadian Tire Pacific Associates Further given the excessive amount of inventory
in the warehouse a single-location model assuming an infinite warehouse capacity is reasonable
Of course should inventory control in the warehouse become a priority a more elaborate model
would be required
More specifically we consider a periodic review single-product inventory model with
stationary independent stochastic demand a deterministic lead time and an infinite planning
horizon The probability mass function for the demand is based on empirical sales data
collected over a period of approximately ten months The cost of inventory includes a
proportional holding cost and a fixed ordering cost neither of which is discounted All excess
demand is completely lost The objective of the model is to minimize the long-run average cost
per unit time subject to a service level constraint on the fraction of demand satisfied directly
from in-store inventory In order to obtain meaningful cost comparisons the model calculates
the expected annual cost of inventory
For inventory problems like the one described above optimal (sS) policies can be
computed by Markovian decision process methods such as successive approximations or policy
iteration or by stationary Markovian methods However each of these methods generate
calculations that are complex and time consuming Therefore much research interest lies in
4
developing techniques to find approximate (sS) policies with little computational effort The
majority of the approximation techniques begin with an exact formulation of the problem and
then manipulate the problem by relaxations restrictions projections or cost approximations
(Federgruen 1993) Porteus (1985) presents three approximation techniques and compares
them to fourteen others for a periodic review single-product inventory model in which
shortages are fully backordered and a shortage cost is incurred Federgruen Groenevelt and
Tijms (1984) present an algorithm for finding approximate (sS) policies for a continuous review
model with backordering and a service level constraint Also Tijms and Groenevelt (1984)
present simple approximations for periodic review systems with lost sales and service level
constraints All three works find that the approximation techniques perform well However
the techniques are evaluated for a variety of demand parameters that all result in policies with
a value of S in the range of 50 to 200 Given the slower moving products at Canadian Tire 2
it is unclear how well such approximation techniques would perform Therefore we do not
attempt to apply or modify any of these approximation methods
Exact optimal policies for this problem can be obtained by formulating a constrained
Markov decision process and solving it However the data generating requirements and the
lack of a good upper bound on S make this formulation impractical Therefore we formulate
a Markov chain model for fixed values of s and S and then employ a search technique to find
the optimal values for s and S In order to improve the performance of the model we develop
a heuristic search that locates near optimal policies relatively quickly
The remaining chapters of this thesis are organized as follows In Chapter II an
overview of the existing inventory system at Canadian Tire is presented along with a description
2 For example very few of the products analyzed have optimal values of S exceeding 20 with the largest value of S equalling 69
5
of the problem Next a multi-phase project designed to develop a fully integrated interactive
inventory control system is described with the scope of the research reported in this thesis
completing the first phase of the project Finally a description of the demand and cost data is
given
In Chapter III we formulate a Markov chain model that can be used to calculate the cost
and service level associated with a given (sS) policy Based on several simplifying
assumptions the Markov chain is formulated and the equations for the corresponding transition
probability matrix are developed Then given the limiting probability distribution of the chain
the equations for the steady state annual cost of inventory and the corresponding service level
are obtained The chapter concludes with a brief summary of the model
In Chapter IV an algorithm that searches for the optimal (sS) policy is developed As
a starting point a simple grid search algorithm is developed and evaluated on the basis of
execution time In order to improve the algorithms speed a technique for updating the
transition probability matrix is presented and the improvement in the algorithm is noted Next
a theoretical lower bound on S is obtained although the corresponding reduction in the
execution time is minimal Finally based on two assumptions regarding the shape of the
feasible space a heuristic search is developed which improves the speed of the algorithm
significantly
In Chapter V a prototype of the inventory control systems interface is created In its
present form the interface allows managers to evaluate inventory policies interactively The
manager can set review parameters compare optimal policies and current policies and evaluate
alternate policies The chapter concludes by recommending specific options be including in
future versions to make the system more automated and user-friendly
In Chapter VI optimal policies for all products in one product category sold at one store
6
are compared to existing policies on the basis of expected annual costs and customer service
levels The analysis suggests that existing policies result in a large excess inventory and that
implementing the optimal policies would reduce the annual cost of inventory by approximately
50 A sensitivity analysis on the cost estimates is performed and suggests that the model is
not sensitive to relative errors of approximately 20 in the cost estimates Finally a sensitivity
analysis on the demand probability mass function is performed The analysis indicates that the
model is sensitive at least in terms of the customer service level to slight changes in the tail
of the demand distributions of low-demand products
Finally in Chapter VII the results of the analysis are summarized and future work is
outlined In order to incorporate recent changes in the review procedures at several stores the
model must be modified to allow for the duration of the review period to exceed the lead time
We recommend that the second phase of the project proceed specifically that a data collection
and storage scheme be designed and that a forecasting model be developed Because of the
substantial savings that can be realized by reducing inventory only at the stores inventory
control at the warehouse should also be investigated
7
II T H E I N V E N T O R Y S Y S T E M A T C A N A D I A N TIRE
A Background
Canadian Tire Pacific Associates owns and operates 21 retail stores in the lower
mainland of British Columbia The stores carry approximately 30000 active products3 that
are divided into 80 product categories The merchandise comprises primarily automotive parts
and accessories home hardware housewares and sporting goods Canadian Tire Pacific
Associates also owns a central warehouse in Burnaby at which inventory is received from
Toronto Inventory is then shipped periodically from the warehouse via truck to the local
stores In 1992 total sales at the stores exceeded $99 million and the value of inventory was
estimated to be $28 million of which approximately half was stored in the warehouse
On selected days of each week a stores inventory records are reviewed automatically
and orders for products are placed to the warehouse as required Management uses the term
flushing to describe the process of reviewing the inventory and producing the tickets for stock
owing and the term picking to describe the physical act of filling the order at the warehouse4
Whether or not an order is placed for a product depends upon its current inventory level its
target level and its minimum fill 5 If the target level less the current level exceeds the
minimum fill an order is placed to bring the stock up to the target level From the moment
3 Active products are those that are regularly restocked Canadian Tire Pacific Associates can choose from up to 50000 products
4 Note that the number of picks per week is equal to the number of times per week that the inventory records are reviewed At the beginning of this study eighteen stores had two picks per week while the remaining three stores had only one
5 The target level is the maximum number of items that should be on the shelf at one time and the minimum fill is the minimum number of items that should be ordered
8
the order is placed to the moment the product is reshelved takes between two to four days
depending on the store On average 11000 items are shipped from the warehouse at each
flush
Although a products minimum fill is the same for all stores its target level depends
upon the size of the store Based upon its sales volume and retail space a store is classified
as being one of five sizes small (S) medium (M) large (L) jumbo (J) and extra jumbo
(EJ) 6 Each product has associated with it a target level for each size of store
Consequently all stores of the same size have identical inventory policies Table 1 lists the
location size number of picks per week sales and floor space of each store as of October
1993
Periodically the inventory manager reviews the policies and when deemed necessary
adjusts them In this way the manager can account for seasonality in demand changes in mean
demand and any shortcomings of previous policies At the present time the review process
is not automated nor performed on-line The inventory manager uses Hxl5 computer
printouts with five products to a sheet to study the relevant information and on which to note
any changes Afterward the changes are recorded in the system and the new policies take
effect
Currently the inventory policies are based on rules of thumb developed through the
years and not on a statistical analysis of demand nor on a calculation of the cost of inventory
These rules of thumb incorporate a marketing philosophy which at times dominates the
inventory strategy The prevailing philosophy holds that a large in-store inventory instills
6 During the course of this study stores were resized several times At one point the entire class of medium stores was eliminated leaving only four sizes of stores On another occasion the store in Chilliwack was changed from being a small store to a large store
9
Table 1 Location and particulars of the 21 stores
Store Location Store Size
Picks Per Week
1992 Sales ($)
Floor Space (ft2)
1 Chilliwack S 2 2901969 6678
2 Coquitlam M 2 4015303 6510
3 Langley EJ 2 8138673 15422
4 Scott Road EJ 2 7307820 15064
5 Maple Ridge L 2 4102110 6678
6 Kingsway L 2 4153736 6574
7 Richmond EJ 2 8175105 14961
8 North Vancouver M 2 3856571 6534
9 Guildford M 2 3714372 6567
10 Burnaby M 2 3532752 6983
11 New Westminster S 1 2417992 6470
12 Abbotsford EJ 2 7899398 15303
13 Hastings J 2 4647794 9849
14 King Edward EJ 2 3825372 25492
15 White Rock L 2 3960262 6870
16 Main amp Mountain S 1 2705602 6431
17 Heather J 2 4161227 9427
18 King George J 2 4606817 9640
19 Cambie J 2 5855022 9091
20 Lougheed M 1 3114180 6615
21 Burrard J 2 6553310 10608
10
consumer confidence which in turn leads to increased sales In other words if a customer
perceives that Canadian Tire is in the hardware business he or she will choose to shop there
when meeting future needs However management has adopted this philosophy without any
analysis of the cost of holding excess inventory Only recently has management begun to
question the cost-effectiveness of allocating inventory based on these rules of thumb
Speculating that existing inventory practices might be deficient Mr Don Graham the
vice-president of Canadian Tire Pacific Associates commissioned a pilot study to examine the
inventory system and to propose alternate strategies7 The study using a steady state model
to represent a simplified inventory system suggested that existing policies lead to overly high
inventory levels More importantly the study outlined a methodology that would enable
management to determine inventory levels based on observed demand The pilot study
recommended that a more detailed model of the inventory system be formulated that the
methodology be expanded to incorporate the cost of inventory and that an algorithm be
developed that would quickly identify the optimal inventory policies
B The Problem
At the time of the pilot study management was concerned primarily with its inability
to distinguish between stores of the same size As mentioned in the previous section a
stores size is based solely on its sales volume and floor space and under existing practices
all stores of the same size have identical inventory policies for every product Management
realized that demand for some products might be a function of variables other than size such
7 The pilot study was performed by Martin Puterman a professor of Management Science and Kaan Katircioglu a doctoral student in Management Science both at the University of British Columbia The results of the study were presented at a U B C Transportation and Logistics Workshop on March 25 1993
11
as location For example the demand for sump pumps is likely to be very different in suburban
areas than in urban ones However management was unable to allocate more sump pumps to
large suburban stores than to large urban stores This inability led management to seek a
tool that would allow for a more effective allocation of inventory between stores of the same
size
By the end of the pilot study however management was less concerned with
reallocating inventory within a size of store than with reallocating inventory between sizes
of stores and with reducing overall inventory According to management assigning individual
inventory policies to each store appeared to be operationally infeasible Firstly management
believed that having individual policies would lead to confusion in the warehouse and to
increased shipping errors Exactly why this would occur is unclear the warehouse would
simply continue to fill orders from tickets that make no reference to the policy in place
Secondly and perhaps more tenably the computer technology at Canadian Tire Pacific
Associates did not allow for policies to vary across all stores Both the database used to store
the inventory data and the printouts used by the inventory manager allowed for only five
different policies per product all with the same minimum fill Moving to individual policies
would have required an overhaul of the existing information system Although management
saw this overhaul as inevitable it did not see the overhaul as imminent Therefore
management switched the focus of the study to developing a tool that would help reduce overall
inventory levels andor reallocate inventory more effectively between groups of stores
The subtle change in the studys objective prompted an important question how should
the stores be grouped The current practice of grouping stores based on size is problematic
for two reasons First as discussed above additional factors of demand such as location
cannot be taken into account Second grouping inherently results in a misallocation of
12
inventory when some stores within a group have differing numbers of picks per week For
example the medium-sized Lougheed store which has one pick per week requires higher
inventory levels to achieve a given customer service level than the other medium stores
which all have two picks per week8 In fact in terms of customer service levels it might
be more appropriate to group the Lougheed store with the large stores having two picks per
week Ideally this artificial grouping of stores will be abandoned when the computer system
is upgraded and policies can then be set on a store by store basis
As the project proceeded management grew somewhat uneasy with the concept of using
an analytical tool to evaluate and set inventory policies According to both the pilot study and
the preliminary results of this study significantly reducing inventory would greatly reduce costs
while still providing a high level of customer service However management held that because
the model cannot take into account intangibles such as marketing considerations such a drastic
reduction in inventory would be very inappropriate In this light management viewed the
optimal policies as lower bounds for inventory levels these policies would have to be
modified upwards in order to be practical Therefore management contended that any
methodology or software produced during this study should provide the means to evaluate and
compare a number of alternate policies
Regardless of exactly how the tool is to be used there is currently a lack of historical
sales data from which to analyze the inventory system and determine optimal policies No sales
data had ever been collected prior to the pilot study and only a relatively small amount has
been collected since In order to proceed with any analysis of the inventory system a
8 If demand is a function of size then the Lougheed store must meet the same demand with one fewer pick per week This would lead to either increased probabilities of stockouts at the Lougheed store or higher inventory levels at all the other medium stores
13
substantial amount of additional data would be needed The existing information system at
Canadian Tire Pacific Associates does allow for sales data to be captured however the system
is limited by the amount of data it can capture at one time and by its storage capacity In order
to collect the amount of data required management would have to upgrade the system and
develop some kind of data collection scheme coupled with a data compression technique The
collection scheme must allow for characteristics of demand such as trends and seasonality to
be identified and the compression technique must allow for sales data for over 30000 products
to be stored for each store
Because many of the products sold by Canadian Tire have nonstationary demand as a
result of seasonality andor trend the inventory tool must be able to forecast demand for the
coming period Products such as sporting goods and outdoor equipment exhibit patterns of
demand that are very seasonal For example sales of snow shovels increase through the fall
peak in the winter and drop to zero by late spring At the same time some products might
become either more or less fashionable over time resulting in changes in mean demand
Setting inventory policies for any of these products based on observed demand would result in
insufficient stock if demand increased during the period or in excess stock if demand decreased
Therefore the tool must be able to forecast the demand for the period for which the policy is
intended
Toward the end of the project management began discussing the integration of the
interactive inventory tool with the existing system to form a new inventory control system The
new system would utilize a modified point of sales system to collect sales data continually
Based on the latest available data the system would forecast demand for the coming period and
calculate the optimal policies for every product at every store The system would then provide
all relevant information on-line for the inventory manager to review The manager could weigh
14
other information such as marketing considerations and examine alternate policies to determine
the effect on cost Finally the preferred policy would be set in place with the touch of a key
and information on the next product or store would be presented for review
C The Project
Development of the inventory control system envisioned by management requires the
completion of five tasks 1) the design of a data collection system that generates and stores the
necessary sales data 2) the development of a forecasting method that provides accurate
estimates of demand distributions 3) the formulation of a model that calculates the cost of
inventory and the customer service level for an inventory policy 4) the development of an
algorithm that finds the optimal policy for a product at a store and 5) the creation of an
interface that allows interactive and on-line consultation Ultimately the above components
would have to be integrated and incorporated in a manner that would ensure the compatibility
and reliability of the system
The scope of the research reported in this thesis completes the first phase of the project
specifically we formulate an inventory model develop an algorithm and create a prototype of
the interface Because of the changing environment at Canadian Tire Pacific Associates minor
modifications to both the model and the algorithm developed herein might be necessary to
reflect future changes in operational procedures Upon completion of phase one the interface
will be interactive allowing managers to select the store product and review scenario and then
to compare optimal policies with existing policies or with alternate policies Although the
prototype will be delivered to Canadian Tire Pacific Associates for ih-house testing at the end
of this phase the interface will require modification in subsequent phases as feedback from
management is received and as the system is brought on-line
15
In order to assess more fully the potential savings of implementing the inventory control
system this thesis includes a comparison of optimal policies9 and existing policies The
expected annual cost of inventory for an entire product category is calculated for both the
optimal policies and the existing policies Based on an analysis of these costs the potential
savings of implementing the optimal policies are extrapolated Further the thesis examines the
sensitivity of the model to variations in the estimates of demand and costs
Originally results from all 21 stores were to be included in the above analysis
However just prior to the analysis management changed the review procedure at several
stores the result of which being that three picks per week are now performed at those stores
Because one of the main assumptions of the model specifically that the length of the lead time
does not exceed the duration of the review period is violated under this new review procedure
those stores cannot be included in the analysis Therefore the analysis is based solely on the
results from store six the large store located on Kingsway Avenue10
For the purpose of the analysis sales data for product category 20 automotive and
electrical accessories were collected from all 21 stores This product category was selected
because the distribution of demand for products within it is non-seasonal and because few of
the products are ever placed on sale11 The lack of trend or seasonality eliminates the need
for forecasting demand the optimal policies can be determined based directly on observed
demand
9 That is those policies obtained from the model
1 0 Store six is one of the only stores whose review procedure is not expected to change from two picks per week
1 1 Products that were on sale at any time during the period were not included in the data set
16
D The Demand Data
In total sales data for 520 products of which 458 are active products were collected
over a 307-day period from October 10 1992 to August 18 199312 The data was supplied
by Canadian Tire Pacific Associates in the form of a 10 MB text file with one line per day per
product recording sales from the stores13 Each line had the following format
Columns 1-6 part number Columns 7-9 Julian date14
Columns 10-18 cost of the item (to three decimal places) Columns 19-124 sales for stores 1 through 21 (5 columns per store)
In order to facilitate the analysis the file was sorted into 458 sales files with each of
these files containing the history of daily sales for one of the products Two changes were
made to the format of these files to improve readability 1) a column was added between the
product number and the Julian date and 2) all leading zeros were dropped Appendix A
contains a partial printout of the sales file for a typical product Finally a distribution file
summarizing the daily sales was created from each of the sales files Each distribution file
contains the products number the products cost and the number of days during which various
quantities of the product were sold at each store
Prior to the analysis the distribution files for a large number of products were
examined and based on the shapes of the histograms the products were divided into three
groups The first group low-demand comprises products that have demand on only a few
days with the daily demand seldom exceeding three items The second group medium-
1 2 Of the active products only 420 are sold at store 6
1 3 Strictly speaking a line was written to the file only on days on which at least one store registered a sale of the product
1 4 According to the Julian calendar days are numbered sequentially from 1 to 365 (366 during leap-years) beginning with the first of January
17
demand comprises products that have demand on approximately half of the days with the daily
demand seldom exceeding more than six items Finally the last group high-demand
comprises products that have demand on most days occasionally upwards of twenty items and
whose demand histograms resemble Poisson distributions The majority of the products
examined fell into the low and medium-demand groups only a few high-demand products
were observed Appendix B contains a printout of the distribution file for a typical product
in each group
For most products no theoretical distribution appeared to model the demand well
Demand for low and medium-demand products followed a non-standard distribution with
a mass at zero and a relatively small tail Although some theoretical distributions such as the
mixed-Poisson can be made to resemble this it was unclear how well they would perform
Further the effects of sampling errors from such non-standard distributions were unknown
On the other hand the standard Poisson distribution did appear to model high-demand
products well however only a few products fell into that group Therefore in the absence of
a good theoretical candidate the empirical demand function was chosen for the analysis The
empirical function was readily available from the distribution files and offered the best
estimate of the true underlying function
E The Cost Data
Along with the sales data management supplied estimates relating to the costs of holding
and ordering inventory Management estimates that the cost of holding an item in inventory
for one year is 30 of the items cost Incorporated in this holding rate are a number of costs
such as the opportunity cost of money invested and the costs incurred in running a store
Because it is the annual cost of inventory that is of interest either the compounded daily
18
holding rate or the simple daily holding rate can be used to determine the costs incurred during
a review period however the method of calculating and extrapolating the holding costs must
be consistent For the sake of simplicity a simple daily holding rate is used
In order to estimate the cost of ordering inventory management analyzed the various
tasks that result from an order being placed Using the average time required to fill and then
reshelve an order management obtained an estimate of the direct labour costs involved To
this management added an estimate of the cost of transporting an order from the warehouse to
the store Finally the estimate was adjusted slightly upward to account for the cost of breakage
and errors Based on the analysis management estimates the cost of placing an order for a
product to be $0085 regardless of the size of the order
19
III M O D E L F O R M U L A T I O N
A Terminology
In the previous chapter several terms were introduced to describe the inventory system
at Canadian Tire Pacific Associates These terms though perfectly adequate are not widely
used in the academic literature to describe inventory management problems Therefore in
order to avoid confusion and be consistent with the literature the following terms are used
throughout this thesis
The length of time between successive moments at which the
inventory position is reviewed15
The time at which a reorder decision is made
The length of time between the moment at which a decision to
place an order is made and the moment at which the order is
physically on the shelf
An operating policy in a periodic review inventory model in
which (i) the inventory position is reviewed every T days (ii) a
replenishment order is placed at a review only when the inventory
level x is at or below the reorder level s (gt 0) and (iii) a
replenishment order is placed for S-x units (S gt s)1 6
Lost Sales - The situation in which any demand during a stockout is lost
Review Period -
Decision Epoch
Lead Time -
(sS) Policy
1 5 With respect to the terminology used at Canadian Tire Pacific Associates a review period equals the number of days between flushes
1 6 With respect to the terminology used at Canadian Tire Pacific Associates S represents the target level and s represents the difference between the target level and the minimum fill
20
B Assumptions
In to order make the model of the inventory system mathematically manageable several
simplifying assumptions are made However we believe that the following assumptions do not
significantly reduce the accuracy of the model
1) Demand can be approximated very closely by sales during the period in which the data
is collected Generally inventory levels at the stores are very high and the number of
lost sales is assumed to be negligible In fact the inventory levels for a number of
products were tracked over time during the pilot study and not a single incidence of
stockout was observed Because all products appear to have similar excess inventory
it seems reasonable to assume that virtually all demand resulted in sales
2) The demands in successive periods are independent identically distributed random
variables Preliminary tests (Fishers exact tests) suggested no dependence between
sales on consecutive days and plots of sales over time indicated no seasonal pattern
3) Demand is independent across products That is we assume that sales of one product
do not affect nor can they be predicted from sales of another product
4) Unmet demand results in lost sales with no penalty other than the loss of the sale
5) The duration of the review period for a store is an integer value and is fixed over a
planning period For stores with two picks per week we assume that the inventory
is reviewed every four days rather than on a four day - three day cycle
6) The decision epoch is the start of a review period Review periods begin at midnight
at which time the inventory is reviewed and orders are placed instantaneously
7) The duration of the lead time for a store is deterministic and integer-valued In reality
the lead time for some stores was stochastic but management felt the variation could be
controlled and virtually eliminated
21
8) The lead time does not exceed the review period In other words items ordered at a
decision epoch arrive and are shelved before the next decision epoch In practice this
did not always occur
9) Orders arrive at the end of the lead time and are on the shelf to start the next day
10) Holding costs are incurred daily for all inventory held at the start of the day
11) The warehouse has an infinite capacity that is all orders to the warehouse are filled
Because of the high inventory levels in the warehouse stockouts in the warehouse are
very unlikely
C A Markov Chain Model
Consider the situation in which an (sS) policy is applied to an inventory system based
on the above assumptions Inventory is reviewed at the decision epoch for each of the periods
labelled t = 0 12 and replenishment occurs at the end of the lead time provided an order
was placed Demand during day d in period t is a random variable whose probability mass
function is independent of the day and period The function is given by
f^ik) = Pr ltd = k = ak for k = 0 1 2
where ak gt 0 and E ak = 1 Let T denote the duration of a review period and L denote the
length of the lead time Next define D T ( as the total demand during period t D L as the total
demand during the lead time in period t and D T L as the difference between D T and DLt
Assuming that successive demands pound f pound 2 are independent the probability mass function of
1 7 The aggregated demand variables are given by
^ = XXd and DT_Ut=J d= d= d=L+l
22
each aggregated demand variable can be obtained by convolving the probability mass function
of t d l s Finally let X denote the inventory on hand at the beginning of period t just prior to
the review
The process X is a discrete time stochastic process with the finite discrete state space
0 1 S A typical sample path of the process with a review period of four days and a
lead time of two days is depicted in Figure 1 As period t begins X units are on hand The
inventory is reviewed and because X is less than s an order is placed for (S-X) units Over
the next two days a demand of D L r occurs and the inventory drops accordingly With the
arrival of the order the inventory level increases by (S-X) at the start of the third day of the
period Over the remaining two days a demand of D T L is observed bring the inventory level
down to X + 1 Note that in this example an order would not be placed in period t+l because
X r + i exceeds s
The stock levels at the beginning of two consecutive review periods are related by the
balance equation
_K- DLy+ (s - v - DT-LX ixtlts ( 1 )
t + l ~ (Xt - DTtY ifXtgts
where the positive operator is interpreted as
= max a 0
1 8 For example the probability mass function of D T bdquo denoted fD T ( is the T-th fold convolution of f t Mathematically the function can be obtained using the recursive relation
and the identity f1^ = f5(
23
-2 I 8
gt o
r
CO
o a
CM
X
00
24
Because X + 1 depends only on Xt the process X satisfies the Markov property
PrXt+l=jX0 = i0Xt_l=it_vXt = i) = PrXt+1=jXt = i
and therefore is a discrete time Markov chain Further because the probability mass function
of the random variable pound is independent of t and thus so too are the probability mass functions
of the aggregated demand the Markov chain is stationary19
D The Transition Probability Matrix
The stationary transition probability p(gt is defined as the probability of X + 1 being in state
j given that X is in state i independent of the period t In the inventory model p-- represents
the probability of starting the next review period with j items on the shelf given there are i units
on hand at the start of the current period By convention the transition probabilities are
arranged in an (S + l)x(S + 1) matrix P such that (P)y = p- Thus the (i + l)st row of P contains
the probability distribution for the stock on hand at the beginning of the next period given that
there are i units on hand at the start of the current period The matrix P is known as the
transition probability matrix Note that since we are concerned with a steady state analysis we
need not consider the possibility of initial stock levels greater than S once the inventory level
is below S it can never again exceed S
The transition probability ptj is calculated by expanding (1) to include all possible
instances of demand that allow for a change in inventory from i units at the beginning of a
period to j units at the beginning of the next period For example suppose the inventory policy
(510) is in place 2 items are on hand at the start of the current review period and 7 items are
1 9 Henceforth the subscripts t and d are omitted from the daily and aggregate demand variables for the sake of brevity
25
on hand at the start of the next period Then only three scenarios are possible
1) No items are sold during the lead time (meaning that the stock level increases to 10
after replenishment) and 3 items are sold during the remainder of the period
2) One item is sold during the lead time and 2 items are sold during the remainder of
the period
3) Two items are sold during the lead time (though demand could exceed 2) and 1 item
is sold during the remainder of the period
The transition probability p 2 7 is the sum of the probabilities of the various scenarios and is
For this problem the cost of inventory has two components (i) a fixed ordering cost
cf incurred whenever an order is placed and (ii) a holding cost cv incurred daily for each item
held in inventory The expected cost of inventory for a review period can be calculated by
summing the costs associated with each inventory position under steady state conditions
Because a simple holding rate is used this cost is simply adjusted by number of review periods
in a year to obtain the expected annual cost of inventory
The ordering cost for a review period is relatively straight forward to calculate either
an order is placed in which case the order cost is incurred or no order is placed in which case
no cost is incurred According to the rules of the inventory policy orders are placed only if
the stock on hand at the beginning of a review period is less than or equal to s Further the
probability that the review period begins with the inventory in one of these positions is equal
to the sum of the first (s + 1) steady state probabilities Therefore the expected ordering cost
29
for a review period is given by
E[OC] = cfY n y=o
Unlike the simple structure of the ordering cost the holding cost is incurred daily for
each item held in inventory Therefore the daily holding costs associated with all possible
inventory positions must be weighted and summed to obtain the holding cost for the review
period In order to make the calculations less complicated a shifted review period beginning
immediately after replenishment and ending just prior to the next replenishment is considered
Define e(0 to be the expected number of items on hand to start day i of the shifted
review period and let g(i f) denote the expected number of items on hand to start day i given
that there were j items immediately following replenishment21 The function g(z j) is the sum
of the probabilities of possible demand weighted by the resulting stock levels that is
g(ij) = j^kPriD^j-k)
To obtain the expected number of items on hand to start day i independent of j the above
function is summed over all possible values of j and weighted by the corresponding steady state
probabilities yielding
s j ed) = pound r 5 gt P r Z ) = - pound
7=0 k=
2 1 In other words g(if) is the expected number of items on hand to start day i given e(0)=v
30
The expected holding cost for a review period is then given by
T
E[HC] = $gt v e(0 i=i
i=l =0 k=l
where c v equals the simple daily holding rate multiplied by the cost of the item
Although differently defined review periods are used to calculate the above expected
costs the costs can still be summed to obtain the expected cost of inventory for a review
period The expected costs are calculated based on steady state conditions and therefore
represent the costs expected to be incurred during any T consecutive days Summing the above
two expected costs and multiplying the sum by the number of review periods in a year yields
the expected annual cost of inventory
E[AC] = mdash[E[OC]+E[HC]]
T S j 1 ( g ) 365
j=0 i=l j=0 fc=l
G The Customer Service Level
There are many ways to define customer service and the most appropriate definition
depends upon the nature of the business and the perspective of management Two commonly
used definitions are 1) the proportion of periods in which all demand is met and 2) the
proportion of demand satisfied immediately from inventory Although the former definition is
often used because of its simplicity the latter definition is closer to what one commonly means
by service (Lee and Nahmias 1993) A third definition also relevant in retail environments
31
is the probability that lost sales do not exceed some critical number Other definitions such
as probability that backorders are filled within a certain amount of time are more applicable
to industrial and manufacturing settings where backlogging demand is common
Given the retail environment with the possibility of lost sales that exists at Canadian Tire
Pacific Associates management is concerned primarily with the fraction of sales that are lost
For example management views the situation in which demand exceeds stock by one unit every
period more favourably than that in which the same demand exceeds stock by three units every
other period For this reason the proportion of demand satisfied immediately from inventory
is the most appropriate measure of customer service
The customer service level for a single review period CSLRP is given by
r bdquo T _ Demand satisfied during RP Total demand during RP
Because we are interested in the long-run behaviour of the system a measure of the steady state
customer service C S L must be obtained As shown in Appendix D the correct measure is
poundpoundpound _ E[Demand satisfied during RP] E[Total demand during RP]
which can be rewritten as
pound pound pound _ j _ E[Demand not satisfied during RP] ^ E[Total demand during RP]
Because of the steady state conditions the above customer service level can be estimated
from any period of T consecutive days As was done for one of the cost calculations the T-day
period beginning just after replenishment is considered Suppose that there are j units of
inventory on hand immediately following replenishment Then the conditional customer service
32
level is
CSL j = 1 E[(DT-j)l
E[DT] (10)
The denominator in the second term is merely the expect demand during the period
E[DT] = 7gt (11)
where p is the mean of the random daily demand variable pound The numerator which is the
conditional expected demand that is not satisfied during the T-day period expands to
7-1
E[(DT-j)+] = T u - j + YU-k)PrDT = k] k=0
(12)
The reader is directed to Appendix E for a mathematical justification of (12) In order to obtain
the unconditional expected demand not satisfied (12) is applied to all possible values of j and
a weighted sum of the terms is calculated The result is given by
E[Demand not satisfied] = Y j =0
y-i Ti - j + 1pound(j-k)PrDT = k
S j-1
= - E[I] + Y0-k)Pr[DT=k) =0 it=0
(13)
where E[I] denotes the steady state inventory level Finally the customer service level is
obtained by the substituting (11) and (13) into (9) yielding
CSL = 1
s j-l
Ti - E[I] + Jgty Y(J-k)PrDT=k]
m n J2VjTU-k)PrDT=k Eil J=Q fc=o
(14)
33
H A Methodology for Evaluating an (sS) Policy
In this section a brief methodology summarizing the main results of the model is
presented The methodology can be applied to evaluate a given (sS) policy in terms of its cost
and its resulting customer service level Given the probability mass function of the daily
demand f the duration of the review period T the length of the lead time L the fixed cost
of placing an order cf and the daily unit cost of holding inventory cv
1) Calculate the aggregated demand probability mass functions fDT fDL and f D x L as the T-th
fold L-th fold and (T-L)th fold convolutions of f respectively
2) Generate the transition probability matrix using either equation (2) or (4) and equation (3)
3) Calculate the limiting distribution TT from (5) and (6)
4) Obtain the L-day shifted limiting distribution rj using (7)
5) Calculate the expected annual cost of inventory using (8)
6) Determine the customer service level using (14)
34
IV A N A L G O R I T H M F O R OBTAINING T H E O P T I M A L (sS) P O L I C Y
A Introduction
The methodology developed in the previous chapter can be used to calculate the cost and
service level associated with a given (sS) policy In this chapter an algorithm that finds the
feasible policy yielding the lowest cost is developed A policy is feasible if it satisfies both the
basic condition 0 lt s lt S and the imposed constraint on the customer service level2 2 In
order to find the optimal policy the algorithm must combine the methodology for evaluating
a single policy with a search technique
Search techniques are evaluated in terms of two somewhat antithetic criteria On the one
hand the search should locate the optimal solution or at least a near optimal solution on
the other hand the search should take as little time as possible Many search techniques
guarantee optimality provided the objective function and constraints exhibit certain properties
such as convexity However even if such a search technique also guarantees its termination
in polynomial time the search might take too long to be practical Alternatively some search
techniques provide reasonable though sub-optimal solutions very quickly These techniques
often called heuristics must be evaluated in terms of both their speed and the accuracy of their
solutions The choice of a heuristic over a search that guarantees optimality depends upon the
nature of the feasible space the need for accuracy and the cost of time
Given the complexity of the cost and customer service level functions it is very difficult
to show theoretically for what if any combinations of demand and costs the feasible space is
convex However a plot of the objective function for a single product may be obtained by
2 2 Management specified that each policy must provide a customer service level of at least 975 Therefore the algorithm must incorporate the constraint CSL gt 0975
35
evaluating the costs for a number of policies within a grid When the service level constraint
is included in these plots maps of the feasible space are obtained Examination of the
maps for several products suggests that the space is convex over most regions however
maps for some products reveal some regions of non-convexity Unfortunately there is no
way of knowing the degree of non-convexity for other products other stores or different costs
estimates without a more rigorous survey of the feasible space Therefore if one of the
techniques that guarantee optimality under the condition of convexity is employed the search
would have to be evaluated as a heuristic Instead as a first step to finding a practical search
technique a crude search that guarantees optimality under virtually all conditions is
investigated
B A Grid Search
The simplest search technique that guarantees optimality merely evaluates all policies in
the grid defined by 0 lt s lt S and 0 lt Sm i n lt S lt S m a x where Sm i n and S m a x are
some predefined values That is the grid search is a brute force method that examines every
policy within the grid 2 3 Although the number of policies that must be examined is large the
grid search is guaranteed to find the optimal policy provided that S o p t is contained in the grid
that is provided Sm i n lt S o p t lt Sm a x The grid search algorithm proceeds by generating the
transition probability matrix for the policy (0Smin) and then evaluating the service level
associated with that policy If the policy is feasible24 the cost associated with the policy is
2 3 The total number of policies evaluated is the sum of the first Sm a x integers less the sum of the first Smin-1 integers Numerically [(l2)(Sm a x)(Sm a x+l) - (l2)(Smin-l)(Smin)] policies are examined
2 4 That is if the service level is adequate
36
calculated and compared to the current lowest cost The procedure continues until all points
in the grid have been examined and the optimal policy has been found A flow chart of the grid
search algorithm is shown in Figure 2
In order to assess the grid search the algorithm was coded and compiled into an
executable program The program was run for two products (a medium-demand product and
a high-demand product) and with four values of Sm a x In each run Sm i n was taken to be zero
The following times were recorded for each trial
T P M - the amount of time spent generating the transition probability matrix
GAUSS - the amount of time spent solving for the steady state probabilities
COSTS - the amount of time spent calculating the expected annual costs
SERVICE - the amount of time spent determining the customer service levels
T O T A L - the total execution time of the program
The columns entitled Grid Search in Tables 2 and 3 summarize the results of the trials All
times are recorded in seconds as required by a 486DX33 MHz personal computer with an
empty buffer memory
Three results are evident from the tables First the vast majority of the execution time
is spent generating transition probability matrices and then solving for the steady state
probabilities with the time being split almost equally between the two tasks Second the total
execution time of the algorithm increases exponentially as Sm a x increases For product 206917
doubling S^ from 30 to 60 led to an increase in the execution time of more than 2100 (from
172 seconds to 3661 seconds) Third the grid search algorithm as it stands does not appear
to be adequate for the problem at hand Given the large number of products that must be
evaluated the algorithm is much too slow to be implementable
37
Calculate the demand probability functions
Initialize s = 0 S = Smin] cost = 10A5
s = s+1
Calculate the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Is s = S-l
Yes
Is S = Smax No
Yes
Print results (sS) cost
s = 0 S = S+1
Figure 2 The flow chart of the grid search algorithm
38
Table 2 Execution times of the algorithms for product 200001 a 30-amp inline fuse
(in seconds)
-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
10 T P M 006 010 001
GAUSS 010 006 001
COST 005 005 001
SERVICE 001 001 001
T O T A L 050 035 027
20 T P M 126 021 010
GAUSS 119 160 023
COST 027 026 001
SERVICE 017 016 001
T O T A L 318 236 055
30 T P M 703 096 010
GAUSS 757 801 093
COST 079 085 001
SERVICE 047 042 001
T O T A L 1664 1137 126
40 T P M 2257 163 015
GAUSS 2958 3003 206
COST 313 329 001
SERVICE 092 083 011
T O T A L 5871 3851 285
39
Table 3 Execution times of the algorithms for product 206917 a 6 solder connector
(in seconds)
bull-max Subroutine Grid Search Grid Search
Updating T P M Heuristic
30 T P M 717 067 006
GAUSS 762 880 093
COST 098 087 010
SERVICE 016 021 006
T O T A L 1720 1176 220
40 T P M 2390 157 022
GAUSS 2861 2911 209
COST 219 227 006
SERVICE 080 088 011
T O T A L 5827 3790 362
50 T P M 6691 413 010
GAUSS 7994 8201 472
COST 568 577 016
SERVICE 212 197 005
T O T A L 15840 10041 654
60 T P M 15509 894 040
GAUSS 18607 18951 876
COST 1367 1353 038
SERVICE 350 359 022
T O T A L 36614 22794 1120
40
C A Technique for Updating the Transition Probability Matrix
As was noted in the previous section approximately half of the execution time of the grid
search algorithm is spent generating transition probability matrices Furthermore the amount
of time increases exponentially as Sm a x increases This increase is exponential for two reasons
first the number of transition matrices that must be calculated is a function of S^ squared and
second the average size of the matrices and hence the average number of calculations per
matrix increases with Sm a x For example when S m a x equals 30 the transition probability matrix
must be generated 465 times with the largest matrix having dimensions (31x31) When Sm a x
equals 40 the matrix must be generated 820 times with 355 of the matrices having dimensions
larger than (31x31) The performance of the algorithm could be improved considerably if
either the number of matrices that must be generated or the number of calculations per matrix
is reduced This section introduces a technique that accomplishes the latter by updating the
transition probability matrix for a new policy instead of generating it anew for each policy
A new policy (s+mS)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (s+mS) where m is any integer satisfying 0 lt s+m lt S has
associated with it the (S + l)x(S + 1) transition probability matrix J Then T can be obtained by
recalculating only m rows of P Recall that the equations for generating a transition
probability matrix are divided into two sets based upon the row being calculated equations (2)
or (4) for rows 0 through s and (3) for rows (s + 1) through S The equations themselves are
independent of s only the limits defining the cases contain s Therefore only the m rows
that are affected by the change in the limits need to be recalculated The following updating
technique can be used to obtain 7
41
1) If m gt 0 rows i = (s + 1) (s+2) (s+m) are recalculated using (2) or (4)
2) If m lt 0 rows i = (s-1) (s-2) (s-m) are recalculated using (3)
3) All other rows of T are identical to those of P
The reader is directed to Appendix F for a mathematical justification of the technique
A new policy (sS+m)
Suppose the policy (sS) has associated with it the (S + l)x(S + l) transition probability
matrix P and the policy (sS+m) where m is any positive integer has associated with it the
(S+m+l)x(S+m+l) transition probability matrix P Then T can be obtained by modifying
each row of P and adding m additional rows and columns The updating technique is not as
simple as that for a new policy (s+mS) for two reasons the dimensions of P and T differ and
the equations for generating a transition probability matrix contain S Nevertheless an updating
technique that requires much less computing time than generating the matrix anew can be
developed The following technique can be used to obtain P
1) For rows i from 0 through s
For columns j from 0 through m recalculate using (2) or (4)
For columns j from (m+1) through (S+m) enter the (j-m)th column entry of P
2) For rows i from (s + 1) through S
For columns j from 0 through S enter the corresponding value from P
For columns j from (S + 1) through (S+m) enter 0
3) For rows i from (S + 1) through (S+m) recalculate using (3)
The above technique is justified mathematically in Appendix G
42
The modified algorithm
The updating technique can be easily incorporated into the grid search algorithm with
only a slight change in the manner in which s is incremented Figure 3 shows the flow chart
of the new algorithm As before the algorithm was coded and compiled into an executable
program and the various execution times were recorded The results are listed in Tables 2 and
3 under the columns Grid Search Updating TPM
Updating the transition probability matrix does improve the performance of the
algorithm The time required to generate the transition probability matrices is reduced by
approximately 90 This translates to a reduction in total execution time of approximately
30 Not surprisingly the reductions are greater for large values of Sm a x However despite
this seemly significant improvement a decrease of only approximately 08 seconds is obtained
when S^ equals 20 Further when S ^ equals 30 the algorithm requires over 11 seconds
which is still much too high
The execution time is now dominated by the time required to solve for the steady state
probabilities The steady state probabilities could be solved by using approximation techniques
which are faster than solving the systems exactly however because the probabilities are often
very small numbers the approximation techniques would be unable to provide the required
accuracy The only remaining way to decrease the execution time is to reduce the number of
policies that are evaluated during the search This can be done by either reducing the size of
the grid being searched or reducing the number of policies being evaluated within the grid The
following section introduces a method of reducing the size of the grid by obtaining a lower
bound for S namely Sm i n
43
s = s+k
Calculate the demand probability functions
Initialize s = 0 S = Smin| cost = 105
k= 1
Update the probability transition matrix for (sS)
Evaluate policy (sS) Is service level ^ 0975
No
No
iNo
Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Ifk= 1 iss = S-l If k =-1 is s = 0
Yes
Is S = Smax No
Yes
Print results (sS) cost
If k=l s=s+l S = S+1
Figure 3 The flow chart of the grid search algorithm utilizing the updating technique for the transition probability matrix
44
D A Lower Bound on S
As mentioned earlier the size of the grid is specified by the number of policies within
the domain defined by 0 lt s lt S and 0 lt Smin lt S lt Smax Thus the size of the grid
and hence the total amount of computation time can be reduced by obtaining tight bounds on
S Unfortunately because of the extreme non-linearity of the objection function and the service
level constraint obtaining a mathematical upper bound on S is very difficult and beyond the
scope of this work This section introduces a method for obtaining a lower bound on S25
For a given value of S an upper bound on the customer service level can be found as
follows Suppose that there are S units of inventory on the shelf at the beginning of every
review period regardless of demand No (sS) policy can provide a higher level of customer
service because there exists a positive probability of beginning a review period with less than
S units on the shelf Thus the customer service level associated with starting each review
period with S units on the shelf is an upper bound on the customer service level for any (sS)
policy From (10) this level is
E[(DT-SY] CSL 5 = 1 - T mdash mdash - ( 1 5 gt
E[DT]
Replacing j with S in (12) and then substituting (12) and (11) into (15) yields
CSL 15 = mdash- - J2(S-k)PrDT = k] (16)
To obtain Smin use (16) to find the largest value of S with a customer service level less than
0975
There are two criteria for a good lower bound on S the bound must be no larger than
This method was proposed by Kaan Katircioglu
45
S o p t and it must be very close to So p t These criteria ensure that the optimal policy will be
contained in the search grid and that the size of the grid is reduced by as much as possible
Based on these criteria the above method of obtaining a lower bound is assessed A value for
S m i n is obtained for each of the products in product category 20 and compared with the
corresponding value of S o p t 2 6 The results are illustrated in Figure 4 which shows the number
of occurrences of various Sm i n and S o p t combinations Note that a point lying on the 45deg line
represents a perfect bound while a point lying close to the S o p t axis represents a very loose
bound The absence of any points above the 45deg line indicates that the first criterion is satisfied
in each instance the method did not generate a value of Sm i n exceeding the corresponding value
of So p t Moreover the bounds are reasonably tight for 85 of the products analyzed that
is for those products with S o p t equal to 10 or less27 However as S o p t increases the bounds
become steadily worse Because values of S o p t are likely to be larger for these products at the
ten Jumbo and Extra Jumbo stores and for other products with higher demand the lower bounds
are not expected to be very tight in general
Although obtaining the bound Sm i n does reduce the size of the grid the corresponding
reduction in the execution time of the algorithm is miriimal For example if S^ equals 60 and
a value of 30 is obtained for Sm i n the program would still require approximately 215 seconds
to search the grid (compared to the 228 seconds required without a lower bound on S) Because
the execution time increases exponentially with So p t a tight upper bound on S would likely have
a more significant impact on reducing the execution time of the algorithm Further research
on this issue is required
2 6 The optimal policy for each product was obtained using a grid search with an extremely large upper bound
2 7 On average Sm i n is approximately half of S o p t for these products
46
47
The only remaining approach to improving the algorithm is to modify the search so that
fewer policies within the grid are evaluated Toward this goal assumptions can be made with
respect to the feasible space and a heuristic search can be developed based on these
assumptions
E A Heuristic Search
As mentioned previously in this chapter a map of the feasible space for each of
several products was obtained Upon closer examination the maps illustrate two patterns
without exception for a given value of S both the cost and the customer service level increase
as s increases The following intuitive argument is offered as a possible explanation for the
observed behaviour When S is held constant increasing s results in more instances in which
an order is placed upon review Hence the average stock level would increase which in turn
would lead to an increase in the cost and the customer service level28 With this in mind a
heuristic search based on the following assumptions is developed for a given value of S both
the cost and the customer service level are monotonically increasing functions of s
In general the heuristic proceeds as follows Having just incremented S by one the
customer service level of the policy (sS) is evaluated If the policy is feasible s is decreased
until the lowest value of s producing a feasible policy is found If the policy is not feasible
s is increased until either the cost exceeds the current lowest cost for a feasible policy a
feasible policy is obtained or s equals S-l In the event that a feasible policy is found the cost
2 8 In order to prove that the customer service level increases as s increases it would be sufficient to show that the probability of placing an order increases as s increases Such a result might be possible if assumptions regarding the demand function are made Further if both the probability of placing an order and the average stock level increase then both the ordering cost and the holding cost would increase No proofs are offered here
48
of the policy is calculated if the cost of the policy is less than the current lowest cost the new
policy becomes the current best Finally S is increased by one and the process repeats
provided S does not exceed some predefined value Sm a x The flow chart of the algorithm
incorporating the heuristic search is shown in Figure 5 Note that the algorithm begins by
attempting to improve on the lower bound Sm i n the policy (Sm i n-lSm i n) is evaluated and if it
is not feasible S m i n is increased by one The improvement continues until a feasible policy is
found
As previously mentioned a heuristic search must be evaluated in terms of both its speed
and the accuracy of its solutions To evaluate the heuristic on the basis of speed the same
approach used to evaluate the previous algorithms is employed The columns entitled
Heuristic in Tables 2 and 3 contain the various execution times of the heuristic The heuristic
is a vast improvement over the previous search techniques the reduction in execution time is
enormous and becomes more so as S m a x increases For a S m a x of 20 the reduction is
approximately 75 of the time required by the grid search algorithm29 and for a S m a x of 60
that reduction soars to over 95 More importantly the heuristic can search a grid with a
of 40 in under 4 seconds or a grid with a S m a x of 60 in under 12 seconds These low execution
times should be sufficient to allow for a large number of products to be analyzed in a
reasonable amount of time
In order to further assess the practicability of the heuristic the total time required by the
heuristic to find solutions for the entire product category was determined and compared to the
corresponding time for the grid search algorithm With a priori knowledge of the optimal
solutions conservative yet reasonable values of S m a x were selected and used by both of the
2 9 Hereafter grid search algorithm refers to the algorithm utilizing the grid search the updating technique and the lower bound Sm i n
49
Calculate the demand probability functions
Calculate Smin S = Smin s = S-l
S = S+l s = S-l t
Update the probability transition matrix for (sS)
No Is service level pound 0975 Yes
No Is service level ^ 0975
Yes
Is cost lt cost No
Yes
Is s lt S-l No
Yes
s = s+l
Update the probability transition matrix for (sS)
Is service level pound 0975
Yes
Is cost lt cost No
Yes
s = s S = S cost = cost
s = s-l
No
Update the probability transition matrix for (sS)
S = S+l
Is s 2 0 Yes
Update the probability transition matrix for (sS)
Is service level pound 0975
No
s = s+l
No
No
Is S = Smax
^Yes
Is cost lt cost
Yes
s = s S = S cost = cost
Print results (sS) cost
Figure 5 The flow chart of the heuristic algorithm
50
algorithms30 The grid search algorithm required approximately 9 hours and 41 minutes to
find the solutions while the heuristic required only slightly more than 23 minutes Based on
speed the heuristic is preferable to the grid search algorithm
Finally to evaluate the heuristic based on the accuracy of its solutions its solutions were
compared to the previously obtained optimal policies Without exception the heuristic
algorithm found the optimal policy Although there is no guarantee that the heuristic will find
the optimal solution for different products or different demand functions the heuristic appears
to work extremely well Based on the fast execution time and the apparent accuracy of the
solutions the heuristic will be used in the development of the inventory tool
3 0 For the test the following values of Sm a x were used 20 (273 products) 30 (19) 50 (23) 100 (3) and 125 (2)
51
V T H E I N T E R F A C E
With the model formulated and the algorithm developed the only remaining task in the
development of the prototype is the creation the interface In fact two interfaces are created
one that displays results in terms of minimum fills and target levels and one that displays
results in terms of reorder points and target levels To be consistent with the previous chapters
the latter interface is described here31
In its present form the interface allows the manager to set review parameters to
compare optimal and current policies and to evaluate alternate policies From the main menu
the manager selects the product store duration of the review period length of the lead time
and value of Sm a x Once the parameters are set the system calculates the optimal policy and
then evaluates the current policy displaying results as they are obtained In particular the
reorder point target level expected annual cost and expected customer service level are
displayed for each policy If a current policy meets the desired customer service level the
expected annual savings of the optimal policy are displayed in terms of both dollars and
percentage of current cost otherwise the value of the current customer service level is
displayed in red to indicate that it is deficient Finally the manager can choose to evaluate
alternate policies or to return to the main menu
Although the prototype is far from the ultimate integrated inventory control system it
is still valuable to management As mentioned in Chapter II inventory policies at Canadian
Tire Pacific Associates are currently based on rules of thumb that incorporate marketing
3 1 Because significant changes to the interface are expected as feedback from management is received and as the system is brought on-line only a brief description of the present interface is given
52
strategies The prototype provides management with a means of determining the proportion of
the cost of inventory that is not attributable to meeting customer demand For example
consider a hypothetical consultation in which the manager chooses to analyze product 200001
a 30-amp inline fuse at store 6 The prototype displays to the manager the current policy of
(1214) which provides a customer service level of 1000 at an annual cost of $748 and the
optimal policy of (39) which provides a customer service level of 977 at an annual cost of
only $319 If for some reason the manager feels the optimal policy is undesirable he or she
can investigate the additional cost of holding excess inventory Suppose the manager chooses
to evaluate the policy (610) The prototype evaluates the policy and displays the results the
customer service level is 998 and the annual cost is $441 With the alternate policy
virtually all demand is satisfied and the cost of inventory is still reduced by over 40 Thus
the manager ascertains that approximately 40 of the current cost of inventory for this product
is directly attributable to marketing considerations Using the prototype in this way
management can begin to understand better the nature of its inventory costs A description and
graphical depiction of the above hypothetical consultation are presented in Appendix H
As for the technical details of the system the prototype can run on any computer using
the DOS operating system having approximately 420K of available conventional memory and
attached to a V G A or SVGA monitor Further the prototype can be used on a machine without
a math coprocessor however performance is slower The prototype consists of two modules
linked together into one executable program The interface module contains the various
interactive subroutines and the main module contains the methodology of the model and the
logic of the heuristic search Both modules are coded in Fortran and compiled using Microsoft
Fortran 50 which provides many extensions to standard Fortran The source codes for the
interface module and the main module are listed in Appendix I and Appendix J
53
respectively
In addition to the above technical specifications the program requires the presence of
certain files in certain directories The program uses the distribution files mentioned in
Chapter II to read the unit costs and the empirical demand functions Each product has a
unique distribution file the name of which is the six digit product number followed by the
extension dst The text file containing the existing policies at each store must be located in
the same directory as the distribution files Finally the file tmsrbfon which contains the
font used by the interface must be located in the directory from which the program is executed
In its future versions the system should be more automated and more user-friendly
Rather than having the manager choose an upper bound for the search the algorithm should
incorporate a method of determining Sm a x For this to happen either a theoretical upper bound
must be obtained or a heuristic for terminating the search must be developed Also the amount
of time spent waiting for calculations to be performed can be reduced by reading the optimal
and current policies and their associated costs and customer service levels from a file or
database This solution file could be created any time prior to the consultation by running
the system in a batch mode The interface should allow the manager to change cost estimates
and service level values view results graphically and print results and summary documents
Finally the system should provide an option for automatically incrementing the product andor
store during a consultation This option would enable a manager to review quickly the
inventory policy of a product at each store
54
VI R E S U L T S AND SENSITIVITY ANALYSIS
A Comparison of Current Policies to Optimal Policies
In order to estimate the potential savings of implementing optimal policies the solutions
obtained in the Chapter IV are analyzed in more detail For each product the current policy
is evaluated and then compared to the optimal policy with respect to cost and customer service
level Finally the potential savings of the optimal policies are extrapolated to all products and
all stores
Of the 420 products examined each of 37 products has an existing policy that fails to
provide the desired customer service level of 975 However most of these policies just
fail to do so only 4 policies provide a customer service level of less than 90 Table 4
provides a list of these 37 products each with its current customer service level its current
annual cost and the additional cost of its optimal policy3 2 Two comments regarding Table
4 are in order First the current customer service level for product 203312 an amber
driveway marker is listed at a misleading 303 Examination of the demand distribution
reveals that this product was sold on only 1 of the 307 days during which sales data were
collected and on that day 13 of the markers were sold Clearly this data point constitutes
either an error or an unusual event the current policy of (34) does not allow for more than 4
items to be sold per review period Second the additional cost of the optimal policy for each
of 5 products is negative In other words for each of these products the current policy which
fails to provide the desired customer service level costs more than the optimal policy which
3 2 This is the difference between the expected annual cost of the optimal policy and the annual cost of the current policy It is the minimum additional cost required to increase the customer service level to at least 975
55
Table 4 Products with insufficient existing policies
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
204570 973 222 -025
203053 973 248 009
206550 972 118 042
206547 972 105 035
206565 972 146 056
203702 972 340 157
206876 972 155 061
205752 972 330 153
205922 972 108 036
206857 972 180 073
205393 972 190 -003
201513 971 345 015
203405 970 255 037
203069 968 295 -048
203071 967 321 -001
205635 967 390 029
203914 966 460 160
204601 962 252 061
203326 960 144 014
202003 958 876 437
206516 958 112 029
206517 958 283 120
206350 958 333 147
205932 958 180 066
203936 952 598 294
56
Product Current CSL ()
Current Annual Cost ($)
Additional Cost of the Optimal Policy ($)
206932 974 204 -051
203939 948 413 193
203977 945 1216 1242
206551 945 132 077
205389 934 598 047
203590 927 1223 607
206567 919 122 070
203591 905 1228 834
205390 887 291 074
203318 833 136 084
206393 776 319 289
203312 303 237 511
provides at least the desired customer service level For the 36 products the total additional
cost of the optimal policies is $542033
Of the remaining 383 products most have an existing policy that provides a customer
service level well above 975 When the customer service levels are rounded to one decimal
each of 253 products has a customer service level of 1000 and each of 347 products has a
customer service level of at least 990 In contrast each of only 58 products has an optimal
policy that yields a customer service level of at least 99034 For each of 37 products the
3 3 The cost associated with product 203312 is not included in the total
3 4 Optimal policies do not have customer service levels of exactly 975 because the function is discrete For low-demand products a unit step in s or S results in a relatively large change in the customer service level
57
current policy is identical to the optimal policy
The extremely high level of service provided by most policies allows for substantial
savings in the cost of inventory With current policies the estimated annual cost of inventory
for all 420 products is $420743 whereas the expected annual cost of the optimal policies is
only $186884 This amounts to a savings of approximately $2340 or over 55 of the current
cost of inventory
In order to further assess the savings the difference between the costs of the current
policies and the costs of the optimal policies are examined in more detail For each of the 383
products whose existing policy provides a customer service level above 975 the difference
between the estimated annual cost of the existing policy and the expected annual cost of the
optimal policy is calculated The resulting histograms of the savings in (a) dollars and (b)
percentage of current cost are shown in Figure 6 The particulars for the current and optimal
policies for all 420 products are provided in Appendix K
As evident from Figure 6(a) the majority of the expected savings in absolute terms
comes from only six products In order to examine these products more closely the current
and optimal policies along with the associated costs and savings for each of the six products
are listed in Table 5 Each current policy is very different than its corresponding optimal
policy resulting in excessive inventory for each product In fact over half of the total expected
savings could be realized by implementing the optimal policy just for each of these six products
Interestingly five of the six products are sealed beam headlights
58
90
10 - 20 30 - 40 50 - 60 70 - 80 90- 100
Savings ()
(b)
Figure 6 The distribution of savings of optimal policies in (a) dollars and (b) percentage of current cost
59
Table 5 Products with the largest potential absolute savings
Although Figure 6(a) seems to indicate that the majority of the current policies are close
in cost to the optimal policies this is very misleading For example suppose the optimal policy
for a product costs $1 and that the current policy costs $2 In absolute terms the optimal
policy saves only $1 but in relative terms the optimal policy saves 50 of the current cost
When savings are viewed in this manner as in Figure 6(b) it is clear that substantial savings
can be realized for the majority of the products In fact both the mode and the mean of the
savings are between 40 and 50 of the current costs
In order to extrapolate the above savings to obtain the potential savings for product
category 20 at all 21 stores the differences between stores must be considered During the
60
pilot study the current policy for each of several products at each size of store was evaluated
The study suggested that medium and large stores have a similar amount of excess
inventory and that jumbo and extra jumbo stores have much more excess inventory One
could reasonably expect that the additional excess inventory allows for higher savings to be
realized at the jumbo and extra jumbo stores Thus because 18 of the 21 stores are
medium or larger the expected 40-50 savings at store 6 can be viewed as a lower bound
on the potential savings to Canadian Tire Pacific Associates from implementing optimal policies
for product category 20 in all its stores
Finally in order to obtain the overall potential savings the expected savings from
product category 20 must be extrapolated to all product categories Ideally the proportion of
inventory comprising each product category and the relative savings that can be realized for
each category would be used to obtain a good estimate of the overall potential savings
However as this information is not known only a crude extrapolation is possible Thus the
analysis proceeds under the assumption that a 40-50 savings can be realized in each product
category35
Before an estimate of the total potential savings in absolute terms can be obtained the
proportion of the current inventory to which the savings apply must be determined Up to this
point the analysis has been concerned solely with reducing inventory at the stores However
it is inappropriate to perform further analysis without considering the entire inventory system
including the central warehouse Because the lead time for orders from Toronto is highly
variable and considerably greater than those at individual stores Canadian Tire Pacific
3 5 During the pilot study the current policies for a paint brush and an ironing board were evaluated and found to result in excess inventory similar to that of product category 20 Although this in no way justifies the assumption it does lend some support
61
Associates must keep a fairly high safety stock at the warehouse Without knowing the
proportion of inventory serving as the safety stock it is inappropriate to assume any reduction
in inventory at the warehouse is possible Therefore the relative savings of implementing
optimal policies is applied only to the inventory held in the stores36 Of the estimated $28
million in inventory approximately half is held in the stores therefore the 40-50 savings
translates to a savings of approximately $55 to $7 million per year
B Sensitivity Analysis on the Ordering Cost and Holding Rate
The above analysis was based on estimates of the ordering cost and the annual unit
holding rate37 provided by management As described in Chapter II these estimates
incorporate a number of costs that are difficult to quantify or that are speculative Therefore
there is some question as to the accuracy of the estimates In this section errors of +$0015
in the ordering cost and +5 in the holding cost are assumed in order to determine the
sensitivity of the model to errors in these variables38
The analysis proceeds as follows Based on an ordering cost of $0080 and a holding
rate of 30 the optimal policies from the previous section were obtained39 Then assuming
3 6 Of course this assumes that the excess inventory currently held in the stores is not required as part of the safety stock Based on the large amount of inventory at the warehouse this assumption seems reasonable
3 7 Hereafter simply referred to as the holding rate
3 8 An error of +$0015 in the ordering cost implies an actual ordering cost of $0070 a relative error of approximately 21 and an error of -$0015 implies an actual ordering cost of $0100 a relative error of 15 An error of +5 in the holding rate implies an actual rate of 25 a relative error of 20 and an error of -5 implies an actual holding rate of 35 a relative error of approximately 17
3 9 These policies are referred to as optimal policies for the duration of this chapter
62
the actual ordering cost andor holding rate are different from managements estimates the
heuristic is used to obtain the true optimal policies Finally the optimal policies are
evaluated based on the actual ordering cost and holding rate and then compared to the true
optimal policies For each possible combination of ordering cost and holding rate three
numbers are recorded the number of products with an optimal policy that differs from its
true optimal policy the total cost of implementing the optimal policies given the actual
ordering cost and holding rate and the difference between the cost of implementing the
optimal policies and the cost of implementing the true optimal policies The results of the
analysis are summarized in Table 6
Table 6 A comparison of optimal policies to true optimal policies
Actual Ordering Cost
$0070 $0085 $0100
25 5 products $155439
$002
51 products $160590
$092
88 products $165464
$449
Actual Holding Rate
30 54 products
$181470 $182
48 products $192026
$088
35 79 products
$207270 $574
48 products $212940
$136
2 products $218312
$000
4 0 The table should be read as follows If the actual ordering cost is $0070 and the actual holding rate is 25 then each of 5 products has an optimal policy that is different from its true optimal policy The total cost of implementing the optimal policies is $155439 which is $002 more than implementing the true optimal policies
63
The model appears to be quite insensitive to relative errors in the order of 20 Under
the worst case scenario when one of the variables is over-estimated and the other is undershy
estimated the optimal policies result in a total cost of inventory which is only approximately
3 higher than the cost of the true optimal policies Further because demand is not changed
by errors in these estimates each of the optimal policies still provides a customer service
level of at least 975 under all of the scenarios Finally although the cost of the optimal
policies varies significantly for the different scenarios the relative savings remain virtually
constant Table 7 lists the cost of existing policies and in parenthesis the relative savings of
the optimal policies for each of the different combinations of ordering cost and holding rate
The cost of the existing policies varies in the same manner as that of the optimal policies the
relative savings for each of the scenarios remains around 55 Therefore even in the presence
of such errors in the ordering cost and holding rate the projected savings of implementing the
optimal policies would be unchanged
Table 7 The cost of existing policies and the relative savings of the optimal policies under various scenarios
Actual Ordering Cost
$0070 $0085 $0100
25 $350153 (56)
$358464 (55)
$366764 (55)
Actual Holding Rate
30 $412438 (56)
$429048 (55)
35 $474725 (56)
$483026 (56)
$491320 (56)
64
C Sensitivity Analysis on the Demand Probability Mass Function
In this section the sensitivity of the model to slight changes in the demand probability
mass function is investigated As described in Chapter II the demand function used in the
model is based solely on observed sales however this empirical function is only one possible
instance of the underlying true demand function For example had the data been collected
over a period both starting and finishing one month earlier many of the empirical functions
would be slightly different Consequently depending upon the degree to which the empirical
functions vary and the sensitivity of the model to these variations the optimal policies from
the model might be inaccurate For example recall the case of the amber driveway marker
only thirteen markers were sold and all were sold on the same day Because the empirical
demand function is used the model calculates an optimal policy of (1213) clearly this
policy is impractical Although this example is extreme it does indicate the danger of using
unrealistic empirical demand functions41
As discussed in Chapter II three classes of products were identified namely low
medium and high-demand products For this analysis the same method of classification
is used Two products are selected from each of these groups and two new distribution files
are created for each of the six products For each product one of the files contains two
additional days of data with each day having a demand equal to the maximum observed demand
for that product In the second file only one additional day of data is added but the demand
on that day is two more than the maximum observed demand The situations that could give
4 1 Certainly a rigorous analysis to determine both the extent of variation in the empirical demand functions and the effect of using the empirical functions needs to be performed However such an analysis is beyond the scope of this thesis only a brief analysis that might suggest the degree to which the model is sensitive is performed here
65
rise to such changes in the demand data are termed Scenario 1 and Scenario 2 respectively42
The analysis proceeds in a manner similar to the one in the previous section Given the
demand that was originally observed the optimal policies were obtained Now assuming the
true demand function corresponds to the demand under Scenario 1 the true optimal policy
for each product is calculated Then each optimal policy is re-evaluated using the true
demand function and compared to the true optimal policy The analysis is then repeated
assuming the true demand function corresponds to the demand under Scenario 2 Table 8
lists the results for each product and scenario
Table 8 True optimal and optimal policies for each demand scenario
Product 202101 (low demand)
Scenario s s Cost ($) C S L ()
1 True optimal 1 2 470 993
Optimal 1 2 470 993
2 True optimal 2 3 663 976
Optimal 1 2 461 875
Product 203507 (low demand)
Scenario s S Cost ($) C S L ()
1 True optimal 0 3 334 981
Optimal 0 2 258 972
2 True optimal 2 3 508 980
Optimal 0 2 273 702
4 2 To be clear the scenarios are defined as follows Scenario 1 The addition of two days each with a demand of max Scenario 2 The addition of one day with a demand of max+2
where max is the maximum observed daily demand for each product in the sample period
66
Product 201032 (medium demand)
Scenario s S Cost ($) C S L ()
1 True optimal 6 12 1377 976
Optimal 6 11 1338 973
2 True optimal 6 13 1426 977
Optimal 6 11 1338 970
Product 203039 (medium demand)
Scenario s S Cost ($) CSL ()
1 True optimal 5 19 256 975
Optimal 5 16 251 969
2 True optimal 5 20 258 976
Optimal 5 16 249 968
Product 203677 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 18 23 3981 977
Optimal 18 22 3817 972
2 True optimal 18 23 3995 978
Optimal 18 22 3831 973
Product 203680 (high demand)
Scenario s S Cost ($) CSL ()
1 True optimal 38 49 9498 976
Optimal 37 48 9175 971
2 True optimal 37 49 9484 975
Optimal 37 48 9206 972
67
The model is most sensitive to changes or errors in the demand functions of low-
demand products When only one additional day of demand for max+2 units is added to the
data the optimal policy for each of the low-demand products results in a very low customer
service level In fact for one of the products the customer service level drops to almost 70
The increase in demand does lower the customer service level for each of the other the
products but that decrease is slight
The above analysis indicates the need for some kind of smoothing or modelling of the
demand data especially for low-demand products The inherent variation between two
instances of a true demand function could very well result in more pronounced changes than
those resulting from either of the above scenarios Therefore it is likely that many optimal
policies especially those for low-demand products would actually provide a much lower or
much higher customer service level than expected However by smoothing the data the
variation between instances of a true demand function can be reduced and the desired
customer service levels can be achieved
For example suppose that the demand for a product is stationary that the average
demand during the previous period was unusually low and that the optimal policy for this
period is based on the demand during the previous period Because the demand is stationary
the probability that the demand during this period is higher than that during the past period is
more than 50 In other words the probability that the demand during this period is higher
than that for which the optimal policy provides the desired expected customer service level
is greater than 05 Thus expected customer service level for this period is actually less than
that specified Now suppose instead that the optimal policy is based on smoothed data which
reflects very closely the expected demand The probability that the demand during this period
is higher than that for which the optimal policy provides the desired expected customer service
68
level is virtually 05 Thus as a result of smoothing the data the specified customer service
level should be expected
69
VII C O N C L U S I O N
In this thesis we developed a single-product single-location model of the inventory
system at Canadian Tire Pacific Associates Specifically we formulated a Markov chain model
to determine the long-run average cost of inventory for fixed values of s and S and then
developed a heuristic search to find near optimal policies quickly Also as a first step toward
developing an integrated interactive inventory control system we created a prototype of the
interface
According to the analysis performed here Canadian Tire Pacific Associates is currently
holding an excessively large inventory in its stores This study finds that Canadian Tire Pacific
Associates could reduce the cost of inventory for product category 20 at store 6 by
approximately 50 and still maintain customer service levels of at least 975 Further the
mean and modal values of savings for these products are between 40 and 50 Given the
similar excess inventory at the other stores and in all product categories we believe that savings
in this range are possible for all products and stores We estimate that the application of
inventory control as described in this thesis would result in annual savings of $55 to $7
million
Given the large potential savings to Canadian Tire Pacific Associates we recommend
that management proceed with the next phase of the project Specifically we recommend that
the model algorithm and interface be refined further that a forecasting model be developed
and that a data collection and storage scheme be designed
In order to reflect operational changes at Canadian Tire Pacific Associates subsequent
to the formulation of the model modifications must be made to allow for the lead time to
exceed the review period Several of the stores now have three picks per week and as a
70
result orders placed for these stores at one decision epoch do not arrive until after the next
decision epoch Because this violates one of the models assumptions the model must be
modified accordingly Note however that with three picks per week and a review period
of four days orders from only the previous decision epoch are ever outstanding at the current
decision epoch
Also the model should be refined to reflect the fact that the review period is not fixed
over the planning period In its present form the model assumes a fixed review period
however inventory at stores with two picks per week is actually reviewed on a four day -
three day cycle and inventory at stores with three picks per week is reviewed on a three day
- two day - two day cycle Rather than obtaining the steady state costs for fixed review period
the model should calculate the steady state cost for a period of one week during which multiple
replenishments occur Although the solutions are not expected to differ significantly as a result
of the change the model would reflect the actual process more accurately
Further work is also required on the search technique for locating near optimal
policies Although the heuristic search described in this thesis appears to work well the
decision maker must provide an upper bound on S prior to the search In practice this upper
bound is generally not known in advance Thus if the heuristic is to be used either a tight
theoretical bound must be found or a termination heuristic must be developed Alternatively
a new heuristic search could be developed based on additional or different assumptions
regarding the properties of the feasible space For example although some regions of non-
convexity were found for some products much of the feasible space appeared to be convex
A heuristic that assumes a convex feasible space would not require an upper bound on S and
might perform very well However before such a heuristic is implemented further work is
necessary to determine the degree of non-convexity for a variety of demand functions and
71
ordering and holding costs
In addition to making the above modifications we recommend that Canadian Tire Pacific
Associates begin work on the remaining two components of the inventory control system First
in order to allow for products with seasonal demand the system requires a forecasting model
to provide accurate estimates of demand for the coming period Second the system needs a
data collection and storage module that systematically collects sales data for each active
product and for each store and then updates the corresponding demand distributions Because
approximately 25 of demand is expected to result in lost sales under the optimal policies the
sales data will have to be adjusted accordingly in the future Also because the model appears
to be sensitive to slight changes in the demand distribution for low-demand products the
module should incorporate a technique for smoothing the empirical distributions for these
products Further work should be undertaken to determine the extent of variation in the
empirical distributions and the most appropriate smoothing technique However because of
the large amount of data required to forecast seasonal demand and because of the current lack
of historical data we recommend that management proceed immediately with the design of a
data collection scheme
Finally two additional issues that are beyond the scope of the next phase should be
addressed at some point First a monitoring system will be required once inventory control
is implemented in the stores The monitoring system will ensure that optimal policies perform
as expected and will indicated whether or not demand is adversely affected by the lower levels
of in-store inventory Second given the degree to which in-store inventory can be reduced
inventory control in the warehouse should be investigated Because approximately half of the
existing inventory is held in the warehouse the additional savings from reducing system-wide
inventory could be great
72
Afterword
Just prior to the completion of the work described in this thesis Mr Don Graham
principle owner of Canadian Tire Pacific Associates sold his shares in the company Shortly
thereafter the results of this thesis were presented to the new management group
Unfortunately the new management did not consider development of an inventory control
system to be a priority Nonetheless the prototype was delivered to Canadian Tire Pacific
Associates for possible in-house testing however at the time of this writing - almost one year
after the meeting - Canadian Tire Pacific Associates has not decided to continue with the
project
73
Bibliography
Arrow K A T E Harris and J Marschak (1951) Optimal inventory policy Econometrica 19 250-272
Day G (1992) In a speech to the Empire Club of Canada Toronto quoted in When the JIT fits The Globe and Mail October 20 1992 B24 and in Puterman (1994)
Dvoretzky A J Kiefer and J Wolfowitz (1952a) The inventory problem I Case of known distributions of demand Econometrica 20 187-222
Dvoretzky A J Kiefer and J Wolfowitz (1952b) The inventory problem II Case of unknown distributions of demand Econometrica 20 450-466
Federgruen A (1993) Centralized Planning Models in SC Graves A H G Rinnooy Kan and P H Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Federgruen A H Groenevelt and H C Tijms (1984) Coordinated replenishments in a multi-item inventory system with compound Poisson demands and constant lead times Management Sci 30 344-357
Lee H L and S Nahmias (1993) Single-Product Single-Location Models in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Muckstadt J A and R O Roundy (1993) Analysis of Multistage Production Systems in SC Graves A H G Rinnooy Kan and PH Zipkin (eds) Logistics of Production and Inventory Handbooks in Operations Research and Management Science vol 4 North-Holland Amsterdam
Porteus E L (1985) Numerical Comparisons of Inventory Policies for Periodic Review Systems Oper Res 33 134-152
Puterman M L (1994) Markov Decision Processes Discrete Stochastic Dynamic Programming Wiley New York
Silver E A and R Peterson (1985) Decision Systems for Inventory Management and Production Planning 2nd edition Wiley New York
Taylor H M and S Karlin (1994) An Introduction to Stochastic Modeling revised edition Academic Press San Diego
74
Tijms H C and H Groenevelt (1984) Simple approximations for the reorder point in periodic and continuous review (sS) inventory systems with service level constraints European J Oper Res 17 175-190
75
Appendix A
A Portion of the Sales File for Product 200001 a 30-amp Inline Fuse
53 [PrDL = kPrDT_L = S-j-k] + PrDLgtiPrDT_L = S-j-i ifOltj i m k=0
Pi if mltj ltS
which for 0 lt j lt m is identical to (2)
93
For s lt i lt S
Pu =
PrDTgti
PrDT = i-j]
0
if0ltjlti
ifiltjltS
a) s lt i lt S
PrDTgti 7=0
PrDT = i -j) if0ltjlti
0 if i ltj lt S
0 ifSltjltSgt
ifj=0
if 0 ltj lt i
if i ltj plusmn S
0 ifSltjltS
ifOltjltS
0 ifSltjltSgt
b) S lt i lt S This does not simplify but it is identical to (3)
CASE 2 The lead time equals the review period
For 0 lt i lt s
0 ifO lt jltS-i
PrDTgti ifj=S-i
PrDT=S-j ifS-iltjltS
94
0 ifOplusmnjlt(S+m)-i
PrDT ifj = (S+m)-i
PrDT = (S+m) -j) if (S+m)-i ltj ltL (S+m)
0 if 0 lt jltS+m-i
PrDTzi] if j = S+m-i
PrDT = S-(j-m) if S+m-i ltj lt S+m
0 if 0 ltj lt S+m-i and 0 ^ j-m
Pi(j-m) if 0ltjlt S+m-i and 0ltj-mltS-i bull
Pi(j-m) if j = S+m-i and j-m = S-i
Pi(j-m) if S+m-i ltj z S+m and S-i lt j-m ^S
0 if 0 zj ltm
Pi(j-m) if mlt jlt S+m-i lt
Piij-m) if j = S+m-i
if S+m-i ltj lt S+m
1deg if 0 ltj ltm
[PiV-m) ifmltjltS
which for 0 lt i lt s is identical to (3)
For s lt lt S
PrDTzi
= PrDT = i-j)
0
ifj = 0
if 0 ltj ltL i
ifKjzS1
95
a) s lt i lt S
PrDTzi
PrDT = i-j]
0
0
17=0
if0ltjplusmni
ifiltjS
ifSltjltSgt
Pij 7=0
Pij if0ltjii
Pij if i ltj ltL S
0 ifSltjltS
Pij ifOzjiS
0 ifSltjltS
b) S lt i lt S This does not simplify but it is identical to (3)
96
Appendix H
A Hypothetical Consultation
In this appendix the interface during a hypothetical consultation is depicted The figures
accurately represent the various screens that are presented to the manager with the exception
that all lines and text are really white on a blue background During the consultation described
below only the choices made by the manager are hypothetical all the results are real
The title screen as depicted in Figure A - l appears initially upon execution of the
program In order to proceed to the main menu the manager presses the enter key
O I C S
Optimat Inventory Control System
For the exclusive use of
Canadian Tire Pacific Associates
Developed at The Faculty of Commerce
and Business Administration The University of British Columbia
Brian Kapalka Kaan Katircioghi Marty Puterman
Press ltEntergt to continue
Figure A - l The title screen
97
Main Menu 1 Select data directory
ctircdatadst
2 Select product and store combination Product 200001
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 5
Figure A-2 The main menu
Figure A-2 depicts the main menu of the program it is from here that the manager
enters all the review parameters If the manager wishes to change one of the parameters from
its default value he or she selects the appropriate number and enters the correct information
in the window presented The new settings will then be shown in place of the default values
In this example the relevant data files are located in the default directory ctiredatadst and
the manager has selected the productstore combination of product 200001 and store 6 Further
the manager has selected a review scenario of a 4-day review period and a 3-day lead time and
an upper search limit of 25 Finally in order to proceed with the analysis the manager
executes the main module of the program by selecting option 5
98
Product 200001 - Store 6 RP = 4 days L T = 3 days
OPTIMAL POLICY Reorder Point Target Level Service Level Annual Cost
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
Workingplease wait
Figure A-3 Calculating the optimal policy and evaluating the current policy
Once the main module of the program is executed the screen depicted in Figure A-3
appears While this screen is displayed the system determines the optimal policy and evaluates
the current policy As demonstrated in the previous chapter the amount of time required to
determine the optimal policy depends on the value of S^ chosen45 Further for a product
with a very large current policy the time required to evaluate the current policy is often more
than that required to determine the optimal policy (assuming a reasonable value of Sm a x)
4 5 Actually for a given value of Sm a x the amount of time required when using the graphical interface is slightly more than that recorded in chapter III
99
Product 200001 - Store 6 RP = 4 days
OPTIMAL POLICY Reorder Point 3 Target Level 2 9 Service Level 977 Annual Cost Xl$ Annual Savings 429
(574)
LT raquo 3 days
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
Would you like to evaluate a different policy (yn)
Figure A-4 Displaying the results
Once the optimal policy is determined and the current policy is evaluated the results are
displayed as shown in Figure A-4 For this example the optimal policy of (39) provides a
customer service level of 977 at an annual cost of $319 In comparison the current policy
of (1214) provides a customer service level of 1000 at an annual cost of $748 Further
because the current policy meets the desired customer service level the expected annual savings
of the optimal policy are calculated the optimal policy would save $429 per year or 547
of the current cost Finally when asked if he or she would like to evaluate a different policy
the manager answers yes
100
Product 200001 - Store 6 RP = 4 days LT = 3 days
OPTIMAL POLICY CURRENT POLICY Reorder Point 3 Reorder Point 12 Target Level 9 Target Level 14 Service Level 977 Service Level 1000 Annual Cost 319 Annual Cost 748 Annual Savings 429
(574)
ALTERNATE POLICY New Reorder Point 5
New Target Level 10
Figure A-5 Entering an alternate policy
Having requested that a different policy be evaluated the manager is prompted for the
new reorder point and target level as shown in Figure A-5 The manager can enter any valid
policy that is any policy satisfying the basic condition 0 lt s lt S Here the manager
chooses to evaluate the policy (610) which is somewhere between the optimal policy and
the current policy
101
Product 200001 - Store 6 RP - 4 days L T = 3 days
OPTIMAL POLICY Reorder Point 3 Target Level 9 Service Level 977
319 Annual Cost
Annual Savings 429 (574)
CURRENT POLICY Reorder Point Target Level Service Level Annual Cost
12 14 1000
748
ALTERNATE POLICY Reorder Point 5 Target Level 10
Service Level Annual Cost
99 5 393
Would you like to evaluate a different policy (yn)
Figure A-6 The particulars of the alternate policy
Once the new policy has been entered the system evaluates the policy and presents the
results as depicted in Figure A-6 In this case the new policy of (610) provides a customer
service level of 998 at an annual cost of $441 Because this policy is expected to meet
virtually all of the demand the difference between the cost of the current policy and the cost
of this policy is directly attributable to the cost of the marketing strategy Thus approximately
40 of the cost of inventory for product 200001 at store 6 is due to excess stock for the
purpose of marketing Finally if the manager wishes to evaluate yet another policy he or she
would answer yes to the question and repeat the process Here the manager chooses not
to evaluate another policy
102
Main Menu 1 Select data directory
ctiredatadst
2 Select product and store combination Product 200001 Store 6
3 Select scenario Review Period 4 Lead Time 3
4 Select search parameter Smax 25
5 Execute program
6 Exit to DOS
Please enter the desired option 6
Figure A-7 The main menu revisited
Having answered no to the previous question the manager is returned to the main
menu as shown in Figure A -7 Now the manager might decide to evaluate another product
at store 6 or to evaluate the same product at a different store Alternatively the manager might
decide to examine the implications of a different review scenario by changing those parameters
and proceeding with the analysis Here the manager chooses to end the consultation by
selecting option 6
103
Appendix I
The Source Code for the Interface Module
include fgraphfi include fgraphfd
dimension f(070200) p(02000200) pi(0200) spi(0200) real mu integer 2 dummy newx newy maxx maxy integer rp bigs smalls smax store target(21) character 1 more character 6 prod prev size(3) character 40 dir character 44 str
record rccoord curpos
common initial dir prod store smax common ptm f p rp It bigs smalls common vector pi spi common costs fc vc eac cac clevel mu common coord maxx maxy common video size
data dirctiredatadst7 prod2000017 prev 7 data store6 rp4 lt3 smax25
call graphicsmode() dummy = setfont( size(l)) ic = 0
do while( ic ne 6 ) more = call menu() read( (il) err =10) ic select case ( ic )
case ( 2 ) store = 0 do while( store It 1 or store gt 21 )
call refreshO call border2() call settextposition( 11 19 curpos ) str = Enter the product and store to be analyzed call outtext( str ) call settextposition( 14 25 curpos) call outtext( Six-digit product code ) call settextposition( 16 25 curpos ) call outtext( Store number ) call input( 14 49 6 ) read( (a6)) prod call clearinput( 14 49 6 ) call input( 16 39 2 ) read( (i2) err=20) store
20 end do
case ( 3 ) rp = 0 It = 1 do while( iocheck gt 0 or It gt rp )
call refresh() call border2() call settextposition( 11 23 curpos ) call outtext( Enter the scenario to be examined ) call settextposition( 14 28 curpos ) call outtext( Review period (days) ) call settextposition( 16 28 curpos ) call outtext( Lead time (days) ) call input( 14 50 1 ) read( (il) iostat=iocheck err=30) rp call clearinput( 14 50 1 ) call input( 16 50 1 ) read( (il) iostat=iocheck err=30) It
30 end do
case ( 4 ) smax 0 do while( smax le 0 )
call refresh() call border 1() call settextposition( 12 22 curpos) call outtext( Enter the upper limit of the search ) call settextposition( 15 33 curpos ) call outtext( Maximum S )
105
40
call input( 15 45 3 ) read( (i3) err=40) smax
end do
case ( 5 ) call openfiles( iflag ) if( iflag eq 0 ) then
call titles( prod store rp It) call opt() do while( prev ne prod )
read(71000) prev (target(i) i = 1 21 ) mf end do bigs = target(store) smalls = - 1 new = bigs - mf call policy( new ) call current( more ) do while( more eq Y or more eq y )
bigs = 0 new = 1 do while( iocheck gt 0 or new ge bigs )
icol = 12 save = cac - eac pet = save cac 100 write(str(alf41a2)) ( pet ) call settextposition( 18 28 curpos ) call outtext( str )
else icol = 48 save = eac - cac end if call settextposition( 17 icol curpos ) call outtext( Annual Savings ) write(str(f62)) save call settextposition( 17 icol + 16 curpos ) call outtext( str ) do while( more ne Y and more ne y and more ne N
+ and more ne n ) call settextposition( 27 67 curpos ) call outtext( ) call settextposition( 27 12 curpos) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more
end do if( more eq Y or more eq y ) then dummy = setfont( size(2)) dummy = getgtextextent( A L T E R N A T E POLICY ) call moveto( ( maxx - dummy ) 2 newy( int2( 640 )) xy ) call outgtext(ALTERNATE POLICY)
end if close( 7 )
end
114
subroutine alternate( more )
include fgraphfd
dimension f(070200) p(02000200) real mu integer rp bigs smalls integer 2 dummy newx newy maxx maxy character 1 more character 6 str character 52 str2
record rccoord curpos
common ptm f p rp It bigs smalls common costs fc vc eac cac clevel mu common coord maxx maxy
do while( more ne Y and more ne y and more ne N and more ne n call settextposition( 27 65 curpos ) call outtext( ) call settextposition( 27 12 curpos ) str2 = Would you like to evaluate a different policy (yn) call outtext( str2 ) call input( 27 67 1 ) read( (al)) more