Upload
buibao
View
218
Download
0
Embed Size (px)
Citation preview
INSTITUTO SUPERIOR
Universidade
Simulating a Distribution Chain
João Granado Marques
Dissertation for the Degree of Master of
Civil Engineering
Examination Committee Chairperson: Prof. Joao Torres de Quinhones Levy
Supervisor: Prof. Amílcar José Martins Arantes Member of the Committee: Profª Cristina Marta Castilho Pereira Santos Gomes
November 2013
ii
iii
Acknowledgments
I would like to thank my coordinator, Professor Amílcar Arantes for the help and support during the writing of this dissertation.
I would also like to thank my family, Mr. S and Hanz for their support.
iv
v
Abstract
Nowadays, distribution operations play a central role in the performance of any organization,
ensuring a significant and decisive impact on the quality of the service provided to the end user.
The aim of this dissertation is to contribute to the enhancement of distribution operations in a
retail company through the development of a simulation model, using Simul8, a discrete event-
based simulation software.
On the one hand, the results confirm the utility of simulation methodology in solving real
problems, random by nature. On the other hand, they make it possible to outline valuable
guidelines on the way the study company ought to implement its distribution operation.
Keywords
Logistics, distribution, simulation, supply chain, discrete event based simulation.
vi
Sumario
As operações de distribuição assumem nos dias de hoje um papel fundamental no
desempenho das empresas, com impacto significativo em termos de nível de serviço ao cliente
final.
O objetivo do presente trabalho é o de contribuir para a melhoria das operações de distribuição
de uma empresa de venda a retalho através do desenvolvimento de um modelo de simulação,
utilizando Simul8, um software de simulação por eventos discretos.
Os resultados, por um lado confirmam a utilidade da metodologia de simulação na resolução de
problemas reais, aleatórios por natureza, e, por outro lado, permitem traçar orientações
valiosas sobre a forma como a empresa em estudo deve implementar a sua operação de
distribuição.
Palavras chave
Logística, distribuição, simulação, cadeia de distribuição, simulação baseada em eventos
discretos.
vii
Content
Acknowledgments ......................................................................................................................... iii
Abstract ......................................................................................................................................... v
Keywords ....................................................................................................................................... v
Sumário ......................................................................................................................................... vi
Palavras chave .............................................................................................................................. vi
Index of Figures ............................................................................................................................. ix
Index of Tables .............................................................................................................................. xi
1. Introduction............................................................................................................................. 1
1.1. Context .......................................................................................................................... 1
1.2. Objectives ...................................................................................................................... 2
1.3. Methodology .................................................................................................................. 2
1.4. Work development......................................................................................................... 3
2. Literature review ..................................................................................................................... 5
2.1. Logistics ......................................................................................................................... 5
2.2. Simulation ...................................................................................................................... 6
3. The original model .................................................................................................................. 9
3.1. Description ..................................................................................................................... 9
3.2. The original model in Simul8 ....................................................................................... 12
3.2.1. The distribution centre ......................................................................................... 13
3.2.2. The shops ............................................................................................................ 22
3.2.3. Validation, stabilization and run time ................................................................... 26
4. Improving the model ............................................................................................................. 29
4.1. Alternate routes ........................................................................................................... 29
4.2. Trucks that do not visit every shop .............................................................................. 36
4.2.1. Attempt 1 ............................................................................................................. 36
4.2.2. Attempt 2 ............................................................................................................. 39
4.2.3. Attempt 3 ............................................................................................................. 41
4.3. Validation of the final model ........................................................................................ 44
4.4. Stabilization of the final model ..................................................................................... 45
viii
4.5. Run time for the final model ........................................................................................ 46
4.6. Runs per trial ............................................................................................................... 47
5. Results and Discussion ........................................................................................................ 49
5.1. Original model and Final model both with five trucks .................................................. 49
5.2. Varying the number of trucks available ....................................................................... 50
5.3. Final discussion ........................................................................................................... 52
6. Conclusions and recommendations ..................................................................................... 53
Bibliography ................................................................................................................................. 55
Annex 1 – Simul8 – A discrete event-based simulation software ............................................... 57
Building blocks ......................................................................................................................... 57
Start Point............................................................................................................................. 58
Queue ................................................................................................................................... 60
Activity .................................................................................................................................. 62
End ....................................................................................................................................... 65
Resource .............................................................................................................................. 66
Simulation clock ....................................................................................................................... 68
Annex 2 – Tables ........................................................................................................................ 69
Warm up for the final model ..................................................................................................... 69
Run time for the final model ..................................................................................................... 69
Truck number for the final model ............................................................................................. 70
ix
Index of Figures
Figure 1 Carts filled with supermarket goods ................................................................................ 1 Figure 2 Methodology .................................................................................................................... 2 Figure 3 Truck life cycle diagram ................................................................................................ 10 Figure 4 Truck route .................................................................................................................... 10 Figure 5 Cart life cycle diagram................................................................................................... 10 Figure 6 Activity cycle diagram .................................................................................................... 11 Figure 7 Original model ............................................................................................................... 12 Figure 8 Distribution centre ......................................................................................................... 13 Figure 9 start point Orders properties ......................................................................................... 14 Figure 10 Warehouse properties ................................................................................................. 15 Figure 11 Schedule limit properties ............................................................................................. 16 Figure 12 “For_shop_x” properties .............................................................................................. 17 Figure 13 n_shopX properties ..................................................................................................... 18 Figure 14 Counting properties ..................................................................................................... 18 Figure 15 Grouping properties .................................................................................................... 19 Figure 16 Loading properties ...................................................................................................... 20 Figure 17 Shop_Flag properties .................................................................................................. 21 Figure 18 Template of a shop ..................................................................................................... 22 Figure 19 Transport_Sx properties.............................................................................................. 23 Figure 20 Reception_Sx properties ............................................................................................. 23 Figure 21 Unloading_Sx properties ............................................................................................. 24 Figure 22 Counting_S x properties.............................................................................................. 24 Figure 23 Route end .................................................................................................................... 25 Figure 24 Transport S5_Warehouse properties .......................................................................... 25 Figure 25 Original model stabilization ......................................................................................... 26 Figure 26 Average time for different trucks numbers .................................................................. 27 Figure 27 Utilization for different truck numbers ......................................................................... 27 Figure 28 Truck routes ................................................................................................................ 29 Figure 29 Truck routes example.................................................................................................. 31 Figure 30 Improved model: new route activities .......................................................................... 33 Figure 31 new links example ....................................................................................................... 34 Figure 32 Results for the original model ..................................................................................... 35 Figure 33 Results for the new routes .......................................................................................... 35 Figure 34 First attempt 1 ............................................................................................................. 36 Figure 35 “Dx” properties ............................................................................................................ 37 Figure 36 “Wx” properties ............................................................................................................ 38 Figure 37 Attempt 1 results ......................................................................................................... 38
x
Figure 38 Results for the new routes .......................................................................................... 39 Figure 39 “Wx” properties ............................................................................................................ 39 Figure 40 Storage Area 29 properties ......................................................................................... 40 Figure 41 Attempt 2 results ......................................................................................................... 40 Figure 42 Attempt 3 ..................................................................................................................... 41 Figure 43 Up to 16:50 properties................................................................................................. 41 Figure 44 “WT” properties ........................................................................................................... 42 Figure 45 Final Model .................................................................................................................. 43 Figure 46 Attempt 3 results ......................................................................................................... 44 Figure 47 Stabilization of the final system ................................................................................... 46 Figure 48 Average time vs. Run time .......................................................................................... 46 Figure 49 Truck utilization vs. Run time ...................................................................................... 47 Figure 50 Original model results ................................................................................................. 49 Figure 51 Improved model results ............................................................................................... 49 Figure 52 Average time and truck utilization vs. Nº of trucks ...................................................... 50 Figure 53 Improved model with four trucks ................................................................................. 51 Figure 54 Original model with four trucks .................................................................................... 51 Figure 55 Example of a Simul8 model ........................................................................................ 58 Figure 56 Start Point Properties .................................................................................................. 58 Figure 57 Start Point Batching .................................................................................................... 59 Figure 58 Start Point Results ...................................................................................................... 59 Figure 59 Queue Properties ........................................................................................................ 60 Figure 60 Queue Results ............................................................................................................ 61 Figure 61 Queue Content ............................................................................................................ 61 Figure 62 Activity Properties ....................................................................................................... 62 Figure 63 Activity Efficiency ........................................................................................................ 62 Figure 64 Activity Resource ........................................................................................................ 63 Figure 65 Activity Routing In 1 .................................................................................................... 64 Figure 66 Activity Routing In 2 .................................................................................................... 64 Figure 67 Activity Results ............................................................................................................ 65 Figure 68 End Properties ............................................................................................................ 65 Figure 69 End Results ................................................................................................................. 66 Figure 70 Resource Properties ................................................................................................... 66 Figure 71 Resource Travel times ................................................................................................ 67 Figure 72 Resource Results ........................................................................................................ 67 Figure 73 Clock Properties .......................................................................................................... 68
xi
Index of Tables
Table 1 Route links ...................................................................................................................... 30 Table 2 Route links example ....................................................................................................... 32 Table 3 Route links example 2 .................................................................................................... 32 Table 4 Collected Results for the incremental changes .............................................................. 47 Table 5 Summary of the main options ........................................................................................ 52
xii
1
1. Introduction
The motivation behind the dissertation is mostly personal. However, this document may come in
handy for others who are searching for information on distribution centres and simulation, as it
is likely it will add something relevant to the existing pool of knowledge.
It will also allow me to explore the potential and features of the Simul8 software and expand my
knowledge of logistic platforms, more specifically distribution centres and operations.
The present dissertation for the Degree of Master was motivating, rewarding and provided an
enriching experience.
1.1. Context
The main focus of the dissertation is an expanded and improved simulation of a distribution
centre presented in Ana Moracho Velasco’s Dissertation for the Degree of Master of Industrial
Engineering – Design of a Distribution Operation Using Discrete Event-Based Simulation.
The original simulation model of the distribution chain has five shops supplied by truck and a
distribution centre that packs the goods in carts (Figure 1).
Figure 1 Carts filled with supermarket goods
The base situation studied in the original model was defined by taking into account information
provided by Jerónimo Martins. The model was created using simul8, a discrete event-based
software that will be described later. The work items inside the simulation start out as orders,
then become carts, then become groups of twenty carts and the only resource in use is the
trucks.
2
Since the shops depend on the distribution chain to keep their stock at the desired levels, the
time the carts take to reach the shops once the orders are sent in is a crucial variable in service
level.
1.2. Objectives
The main goals of this project are to improve on the current model of the distribution chain while
exploring the features that Simul8 has to offer, and to set up recommendations to optimize
distribution chains.
1.3. Methodology
The methodology used in this work follows three simple steps (Figure 2):
• Identify something that could be improved;
• Incorporate it in the simul8 model;
• Compare the results with previous iterations.
Figure 2 Methodology
The first improvement in mind will be to increase the model capabilities by expanding on the
number of routes (pathways) available for the trucks. The main control variables are the number
of trucks needed, the time they are in transit and the amount of time the orders/carts stay in the
system from the moment the orders arrive until the carts are delivered at the shops. In order to
improve on the results of the current model some upgrades were added and their benefits were
gauged.
Identify possible improvement
Incorporate in simul8 Compare results
3
After that a system is required to ensure trucks don’t have carts for all the shops in order to
make the most out of the new quicker paths available. Finally the number of trucks in use must
be adjusted to the new reality.
1.4. Work development
After the introduction there is a review of the state of the art concerning logistics and discrete
event-based simulation.
Following that there is a chapter describing Simul8, the discrete event-based simulation
software used in this dissertation. This chapter aims to explain to the reader how to use the
basic features of Simul8.
The next chapter covers simulating a supply chain operation, more specifically a distribution
chain. It has two sub-sections: The original model and improving the model. The original model
describes the model used by Ana Moracho Velasco in her dissertation, the baseline for this
dissertation, describing both the conceptual model and its implementation in Simul8. The
section on improving the model contains the enhancements added to the simulation. The first
one being the alternative routes made available to the trucks; the second one being the
appropriate grouping of carts in order to maximize the possible gain from the alternative routes;
and finally the readjustment of trucks available for the preferred models.
Finally, there is a chapter discussing the results followed by the conclusions and
recommendations.
4
5
2. Literature review
The most basic definition possible for logistics and simulation can be taken from the Oxford
Advanced Learners 7th edition Dictionary (2005):
− “Logistics: the practical organization that is needed to make a complicated plan
successful when a lot of people and equipment is involved.
− “Simulation: a situation in which a particular set of conditions is created artificially in
order to study or experience something that could exist in reality.”
2.1. Logistics
The definition of logistics given above is rather broad. Many complex operations fall within the
definition presented.
The business definition of logistics presented by the Council of Logistics Management (1997)
gives a better view of the scope of logistics: “the process of planning, implementing, and
controlling the efficient, effective flow and storage of goods, services, and related information
from point of origin to point of consumption for the purpose of conforming to customer
requirements.” Its wide range of application covers the management of material, service,
information or capital.
The Key activities of logistics can be classified into core and supporting. The core activities,
essential to the effective coordination and completion of the logistics task, include: Customer
service; Transportation; Inventory management; Information flows and order processing.
(Lambert et al 1998)
Among the many logistics activities some are more relevant to this dissertation: Warehousing
(management of space and stocks); Materials handling (replacement policies, order-picking
procedures); Cooperation with production/operations (specify aggregate quantities, sequence
and time production output); Information maintenance (info collection, storage and manipulation,
data analysis, control procedures).
Logistics is considered to be part of marketing, being central in the elements of marketing
concept: customer satisfaction, integrated effort and corporate profit. (Christopher 1992)
In the logistics process design four areas must be considered: Customer service goals, Location
strategy, Inventory strategy and Transport strategy. The correct coordination and balance of
these areas will ensure the most successful outcome. (Rohde and Wagner 2000)
Therefore, the selection of the best logistics strategy gives a company a competitive advantage.
6
Logistics in a business aims to provide the best quality of service (service improvement) at the
lowest cost (cost reduction), ensuring high product quality and flexibility (service improvement)
in a demanding ever-changing market. By providing better services, the logistic services
increase the revenues. Thus, the logistics design strategy must be in line with the corporate
strategy (Christopher 2005). The impact of Logistics in the success of an organization has been
clearly established.
The term ”Supply Chain Management” appeared in 1982 in the literature and pointed to the
reduction of inventory within and across firms (Oliver and Webber 1982).
In 1994, The International Center for Competitive Competence (ICCM) defined it as follows:
“Supply Chain Management is the integration of business processes from end user through
original suppliers that provides products, services and information that add value for
customers.”1
Supply chain management, which encompasses all steps of the flow of goods from the raw
materials to the end user, becomes central in the success of a business, providing a sustainable
competitive advantage.
Supply chains contain the most common examples of complex operations: warehousing or
transportation of various goods, trans modal nodes like ports or train stations and distribution
centres. On the other hand, distribution chain is the part of the supply chain that starts at the
production units or at advanced warehouses until the final clients (shops); it is the logistics of
finished goods or services.
Supply chains are also the oldest example of applied logistics, having existed for as long as
large scale war and trade have been around. While supply chains were the first instance of
logistic, recently its application has spread far outside the supply chain environment, extending
to any operation that involves a lot of people and/or equipment. For example, running a hospital
with all the shifts and stocks involved (Robinson et al. 2012).
2.2. Simulation
A simulation is run by using a model, the set of conditions previously mentioned. These models
can be broadly separated into physical or abstract models.
1 ICCM, Douglas M. Lambert, 1994, quoted by Cooper, Martha (1997), Supply Chain management, The International Journal of Logistics Management
7
Some examples of physical models are the dam models present at LNEC or the usage of a
scale model of an aircraft or bridge in wind tunnels to analyse aerodynamic variables.
An abstract model used to be simply mathematical formulas that allowed you to calculate
certain values of interest given key variables. But with the processing power of modern
computers and the various programs that have popped up over the years these models have
grown considerably.
The simulation program used in this dissertation (Simul8) creates object oriented models. This
type of program tends to be visually easy to interact with, which increases the amount of people
that are able to run simulations.
Intuitive programs that are designed for non-programmers have allowed many people to run
simulations who would otherwise have found it quite difficult.
There are many examples of complex simulations in the current world (Jahangirian et al. 2010).
From recreational ones such as the physics engines present in most modern game to massive
models that simulate the traffic through entire cities or even the growth of the city.
When running a simulation it is important to make sure you understand the underlying model.
This model must be a credible mirror of the simulated system in order to have meaningful
results.
While some simulations have no goal other than to simulate the phenomenon – such as the
recreational ones – many are used to improve or optimize the system in question.
Since the model is simply an abstract construct, it is easy to try out new configurations and test
for specific situations without incurring in any costs.
Another great strength of a sound simulation is the ability to analyse the system’s sensitivity to
various factors. This can be vital when planning how to help the system cope with some tough
situations.
8
9
3. The original model
3.1. Description
As stated in the introduction, the main focus of the dissertation is to expand and improve an
existent simulation model of a distribution operation.
All the data used in this dissertation came from the original work of Ana Moracho Velasco
(Velasco, 2012) and, with that in mind, a brief description of the original model is required to
situate the reader.
Annex one can be helpful if the reader is new to Simul8
The distribution chain as presented in the original model includes a warehouse, a distribution
centre and five shops.
The orders from the shops arrive at the warehouse at a fixed rate, twenty four hours per day.
During the working hours, eight in the morning to five in the afternoon, carts are loaded
according to the orders received and are then grouped into bundles of twenty.
The groups of twenty carts are loaded into trucks and shipped to the stores.
At each store, if the truck carries carts to the store in question, the truck must be received and
then unloaded.
The average reception time is fixed regardless of the content of the truck, while the average
unloading time is proportional to the amount of carts that truck brings to the shop in question.
If the truck does not carry carts to the store in question, it simply passes by the store without
stopping.
Once it visits all the shops it has to, the truck returns to the truck park and awaits the next load.
This means the model includes two entities: one permanent, the Trucks; and another
temporary, the Carts.
The life cycle of the trucks is summarized in Figure 3.
10
Figure 3 Truck life cycle diagram
Additionally, the trucks in the original model follow a single route, regardless of whether or not
they need to visit a shop. This path is represented in Figure 4.
Figure 4 Truck route
Each truck departs from the distribution centre with the carts; Passes by each shop from 1 to 5
in ascending order, stopping only if it has any carts for that shop. Finally they return to the
warehouse and wait in the truck park until they are needed again.
The life cycle of the carts is represented in Figure 5.
Figure 5 Cart life cycle diagram
Truck Park Truck load Transport Waiting Transporting
Park
Reception Transport Waiting Unload Waiting Unloading
Return
Distribution Centre Shop 1
Shop 2 Shop 3 Shop 4
Shop 5
Cart load
Reception Waiting Transporting
Reception
Transport Waiting
Unload Waiting
Unloading
Consolidation Outside System
Truck load
Grouping Carts
Load Waiting
11
The activity cycle diagram is represented in Figure 6.
It should be noted that the block circled in purple represents what happens for one shop. In the
original model it happens five times, in the final model it will happen n times depending on the
shops the truck visits.
Figure 6 Activity cycle diagram
Cart load
Reception Waiting
Transporting
Reception
Transport Waiting
Unload Waiting
Unloading
Consolidation
Outside System
Truck load
Grouping Carts
Load Waiting Truck Park
Transport Waiting
Return
Cart Tr
uck
n Shops
12
3.2. The original model in Simul8
The overall model (Figure 7) can be divided into the distribution centre and the shops.
Figure 7 Original model
13
3.2.1. The distribution centre
The distribution centre is the most complex part of the original model (Figure 8).
Figure 8 Distribution centre
A very brief description of the steps this part entails follows:
• The start point Orders generates the orders from the shops which are sent into the Queue for warehouse.
• The Warehouse is the point where the orders are converted into carts, for simul8 there is no distinction.
• The work hours for the activity Warehouse are limited by the resource Schedule limit. • After passing through the Waiting queue the carts are divided according to the
destination through the activities For_shop_1 to 5. • They are then routed to the Queue for Grouping and at the same time to another queue
named n_shopx depending on the activity in question. • The Grouping activity groups twenty carts into one bundle and marks the number of
carts for each shop in the n_loja_x labels by using the contents of the n_shopx queues. • After a bit the content of the n_shopx queues expires to allow for the next round and the
contents are sent into the activity Counting that accepts expired only. • These items are then removed from the system by the Warehouse schedule end. • The bundled carts are sent into the Queue for Loading. They are then loaded into the
trucks during the Loading activity. • This is the only activity in which the Truck resource is required. It is not released until
the End route. • The final activity, Shop_Flag, flags the shops that are in the bundle using the Lx labels.
14
All three groups of labels are created in this part. The first group is the label destino, the second group are the n_loja_x labels and the third group is the Lx labels, with x ranging from 1 to 5.
A more detailed explanation of each item follows:
The simulation begins with the start point (Figure 9).
The start point Orders has a fixed distribution; it generates a new order every three minutes.
In order to simulate orders from the five different shops it sets the label “destino” to 1-5 using the probability profile distribution presented below, a uniform distribution
Figure 9 start point Orders properties
15
After going through the Queue for warehouse, the orders arrive at the Warehouse activity.
This activity has a fixed duration of two minutes and requires the Schedule limit resource to function (Figure 10).
It releases the resource as soon as the task is complete.
Figure 10 Warehouse properties
Since we want to collect bundles of carts, this activity collects twenty of them at a time using the Routing In options.
16
The resource Schedule limit is shift dependent and uses the Warehouse shift, thus limiting the working hours of the Warehouse activity to 8:00-17:00 (Figure 11).
Figure 11 Schedule limit properties
17
The carts are routed to five activities, one for each shop (Figure 12).
The activity “For_shop_x” has a special routing in choice. The carts are batched by type using the label “destino” and the fixed value x.
The images are from For_shop_1 so the fixed value is 1.
This separates the carts intended for each shop to allow for separate counting.
This activity routs out to a n_shopX and to the Queue for Grouping. All five “For_shop_x” rout to the Queue for Grouping.
This activity has no real world equivalent, it’s merely a cog in the mechanism used to count the carts per shop in each truck.
As such the duration of the task is a fixed value of zero.
Figure 12 “For_shop_x” properties
18
The n_shopX queues are different from the rest of the queues in this simulation (Figure 13).
They use shelf life with a value of one. This means any items in this queue will expire after one minute.
Coupled with the activity Counting that accepts only expired items, this queue is assured to keep any items that enters it for exactly one minute providing a temporary measure of the number of carts for each shop.
Figure 13 n_shopX properties
The activity Counting has no duration since it is just there to remove expired items (Figure 14).
Figure 14 Counting properties
19
The Queue for Grouping leads to the Grouping activity.
This activity collects twenty carts and assembles them into a single item in Simul8 with the Assemble option (Figure 15).
The duration of this task is also set at zero.
The entire “Consolidation of the load and count carts per shop” block can be seen as a single activity with a duration of two minutes set by the Warehouse activity.
Figure 15 Grouping properties
This is also the activity in which the n_loja_x labels are defined.
These are the labels mentioned earlier that identify how many carts each bundle has for each shop.
This is achieved by setting the value of n_loja_x to n_shopX.Count Contents.
This counts the amount of items in the n_shopX queue previously mentioned.
20
With the twenty carts assembled and the number of carts for each shop recorded in the n_loja_x labels it is time to load the carts into the truck.
The Loading activity uses a normal distribution with an average of thirty minutes and a standard deviation of five (Figure 16).
Since we are loading the carts into the truck, the resource Truck is required.
Note that the resource is not released after the loading activity is over. The truck will remain in use until it reaches the last activity, Transport S5_Warehouse.
Figure 16 Loading properties
21
The final activity inside the distribution centre part is the Shop_Flag (Figure 17).
In this activity the labels Lx are set to ROUND[[10*n_loja_x]/[1+[10*n_loja_x]]].
This means either 0 if n_loja_x is 0 or 1 if n_loja_x is anything else.
These labels provide a simple way to know whether or not the truck needs to stop at a shop.
Figure 17 Shop_Flag properties
22
3.2.2. The shops
In the original version all five shops are copies of the same template (Figure 18):
Figure 18 Template of a shop
The template consists of four activities and two queues.
The activity Transport represents the time it takes to reach shop Sx (x: 1 a 5).
The activity Reception represents the reception of the truck at the corresponding shop. As
mentioned previously, this task has a duration that is not affected by the number of carts
intended for that shop.
The activity Unloading represents the unloading of the carts for that shop. The duration is
proportional to the amount of carts in question.
The queues Queue for Counting and Warehouse and the activity Counting are merely there so
that we can see how many carts are delivered to Warehouse over the course of the simulation.
The remaining queues have no special function. They are merely there to serve as buffers
between activities.
The queues have no special settings that warrant detailing.
A further description of the activities in this template follows:
23
The journey to the shop does not have a
fixed duration.
Therefore the activity Transport has a
normal distribution to represent the
randomness involved (Figure 19).
An average of fifteen minutes between
shops was assumed with a standard
deviation of five minutes.
Figure 19 Transport_Sx properties
While the average time is fixed, the
reception of the trucks at the store also
uses a normal distribution.
This activity has an average of ten minutes
and a standard deviation of two and a half
minutes (Figure 20).
Both values are multiplied by Lx, a label
that identifies whether or not the truck has
parcels for the shop x. This Lx can be 0 or 1
and needs to be defined in the distribution
centre segment.
Figure 20 Reception_Sx properties
24
The average length of the unloading
process is, as mentioned previously,
proportional to the amount of carts being
unloaded.
This is achieved by multiplying the average
by n_loja_x, a label that identifies the
number of carts going to shop x (Figure 21).
This label also needs to be defined in the
distribution centre segment.
The distribution used for this activity was an
exponential.
This activity routs out to two queues.
Figure 21 Unloading_Sx properties
The activity Counting_S x serves no
purpose. It is merely there to count the
amount of carts that are deposited in shop x
(Figure 22).
Figure 22 Counting_S x properties
After the five shops there is one activity that represents the journey back to the warehouse and an end to the route (Figure 23).
Figure 23 Route end
Like the other transportation activities this final one has a normal distribution (Figure 24).
Figure 24 Transport S5_Warehouse properties
It should be noted that this final activity releases the truck resource.
26
3.2.3. Validation, stabilization and run time
The model was validated in the original dissertation by testing multiple values, among them
expected durations with and without randomness involved.
The model was stabilized by studying average times in system, until the packages were
processed by the distribution centre and until the packages have arrived and been processed at
the various stores (Figure 25 Original model stabilization).
Figure 25 Original model stabilization
This leads to a warm up period of four days, after which the model has stabilized.
This warm up period is assumed to be valid for all the improvements that follow until the last
one. The last one will be tested to ensure the four day period remains valid.
The truck number selected for the original model was based on the analysis of the previously
mentioned average times and truck utilization variation by truck number (Figure 26&Figure 27).
0,00
50,00
100,00
150,00
200,00
250,00
300,00
350,00
400,00
1 2 3 4 5 6 7 8 9 1011121314151617181920
Aver
age
time
(min
)
Number of days
DC scheduleExit S1Exit S2Exit S3Exit S4End Route
27
Figure 26 Average time for different trucks numbers
Figure 27 Utilization for different truck numbers
The amount of five trucks was chosen because six trucks showed no significant benefit.
The original run time was one day so this was the run time used during the improvement
implementation.
0,00
200,00
400,00
600,00
800,00
1000,00
1200,00
1400,00
1600,00
1800,00
2000,00
1 2 3 4 5 6 7 8 9 10
Aver
age
time (
min
)
Truck number
DC scheduleExit S1Exit S2Exit S3Exit S4End Route
30,00
40,00
50,00
60,00
70,00
80,00
90,00
100,00
1 2 3 4 5 6 7 8 9 10
Util
izat
ion
(%)
Truck number
28
29
4. Improving the model
4.1. Alternate routes
The original model considers that trucks must always follow the same route, regardless of what
shops they stop at. The first change aims to fix this by considering that the trucks can take any
of the links/routs presented in the figure below. This leads to multiple routes for the trucks
depending on the carts they carry (Figure 28).
Figure 28 Truck routes
0
1
2
3
4
5
30
The next table sums up the links available to the trucks and their average duration. It also
shows the order in which they will appear in the model.
Since Simul8 requires a single path, logical conditions need to be set to make the links void by
setting their average duration and standard deviation to 0 when they are not part of the route
currently in use.
The L1 to L5 labels, already established in the original model, are 1 or 0 depending on whether
the truck has carts for that shop or not.
The links are not used by the truck in question if the relevant labels have the values presented
in the table. The values in the table follow a simple logic. If either of the shops at the ends of a
link do not exist (Lx = 0) then the link vanishes. If any of the shops in between the two ends
exist (Lx = 1) then the link vanishes as well.
The conditions are of the “or” type, so for link 0-2 if L1 = 1 or L2 = 0 then the link will be
annulled. The “ - “ identifies labels that are not relevant for the link in question.
So for example for link 1-4, if L1 or L4 are 0 then the link cannot be in use since either the
beginning or the end of the link are not part of the current route. The other condition requires
that if either L2 or L3 are 1 then the link cannot exist since the truck always follows an
ascending order. If it needs to pass by either shop 2 or 3 then he can’t go straight from 1 to 4.
Duration (min)
Link name L1 label L2 label L3 label L4 label L5 label
15 0-1 0 - - - - Shop 1 0 - - - -
15 1-2 0 0 - - - 20 0-2 1 0 - - - Shop 2 - 0 - - -
15 2-3 - 0 0 - - 20 1-3 0 1 0 - - 30 0-3 1 1 0 - - Shop 3 - - 0 - -
15 3-4 - - 0 0 - 20 2-4 - 0 1 0 - 30 1-4 0 1 1 0 - 17 0-4 1 1 1 0 - Shop 4 - - - 0 -
15 4-5 - - - 0 0 20 3-5 - - 0 1 0 30 2-5 - 0 1 1 0 20 1-5 0 1 1 1 0 5 0-5 1 1 1 1 0 Shop 5 - - - - 0 5 5-0 - - - - 0
17 4-0 - - - 0 1 30 3-0 - - 0 1 1 20 2-0 - 0 1 1 1 12 1-0 0 1 1 1 1 Dist.Center (0) - - - - -
Table 1 Route links
31
So, for Link 0-1 for example all values are multiplied by L1 while for Link 1-3 they are multiplied
by L1 x (1 - L2) x L3 and so on.
As an example, let us consider one truck has goods for shops 1 and 4. L1 and L4 would be 1
while L2, L3 and L5 would be zero.
The truck would take Link 0-1, followed by Link 1-4 and finally Link 4-0. The connections
mentioned are highlighted in Figure 29.
Figure 29 Truck routes example
The Links in use shouldn’t meet the annulment conditions while all the other links should meet
at least one of those conditions.
In Table 2 in columns L1 to L5 the numbers are red if they match the annulment criteria. If any
of the annulment conditions is met the duration is set to 0 and in red in the Duration column.
0
1
2
3
4
5
32
Duration (min)
Link name L1 = 1 L2 = 0 L3 = 0 L4 = 1 L5 = 0
15 0-1 0 - - - - Shop 1 0 - - - -
0 1-2 0 0 - - - 0 0-2 1 0 - - - Shop 2 - 0 - - -
0 2-3 - 0 0 - - 0 1-3 0 1 0 - - 0 0-3 1 1 0 - - Shop 3 - - 0 - -
0 3-4 - - 0 0 - 0 2-4 - 0 1 0 - 30 1-4 0 1 1 0 - 0 0-4 1 1 1 0 - Shop 4 - - - 0 -
0 4-5 - - - 0 0 0 3-5 - - 0 1 0 0 2-5 - 0 1 1 0 0 1-5 0 1 1 1 0 0 0-5 1 1 1 1 0 Shop 5 - - - - 0
0 5-0 - - - - 0 17 4-0 - - - 0 1 0 3-0 - - 0 1 1 0 2-0 - 0 1 1 1 0 1-0 0 1 1 1 1 Dist.Center (0) - - - - -
Table 2 Route links example
After checking every condition and removing those that are voided, the Links that remain in use
in this example are the expected ones.
Duration Link name L1 = 1 L2 = 0 L3 = 0 L4 = 1 L5 = 0
15 0-1 0 - - - - Shop 1 0 - - - -
30 1-4 0 1 1 0 - Shop 4 - - - 0 -
17 4-0 - - - 0 1 Dist.Center (0) - - - - -
Table 3 Route links example 2
Implementing this change in Simul8 consists in creating activities to represent each link listed in
the table, arranged in the order they appear in the table.
These activities replace the previous ones portraying travelling time (Figure 30).
33
Figure 30 Improved model: new route activities
34
Each activity has a normal distribution with an average equal to the duration listed in the table
and a standard deviation of 5.
Both values are multiplied by the logical conditions in place for each link.
For the two examples mentioned earlier, link 0_1 and link 1_3 (Figure 31):
Figure 31 new links example
With the new routes implemented the model was tested. No deviation from the previous results
was expected since a random group of twenty carts will, on average, always contain at least
one for each shop.
This means that even though the model allows other routes only the original route will be used
at the moment.
As shown in the Figures 51 and 52, the outcome was, as expected, more or less the same, both
in time spent by the parcels in the systems on average and in truck utilization. The difference is
minimal and is mainly due to the randomness of the trials.
35
Figure 32 Results for the original model
Results for the model with new routes available (Figure 33):
Figure 33 Results for the new routes
36
4.2. Trucks that do not visit every shop
In order to take advantage of the improvements in the simulation model, with new routes
available, it is necessary to implement in the model a new way of loading the trucks.
The next step is to group the carts into a truck that does not visit every shop in each trip. This
will increase the time the carts spend in the system since they will wait longer to leave the
warehouse but it should allow for a reduction of the number of trucks in use.
All modifications implemented are situated outside the “Consolidation of the load and count
carts per shop” module to avoid disrupting that part of the simulation that already works as
desired.
Due to that, the orders need to be separated according to the label “destino” before they enter
the warehouse.
A group of twenty must be gathered that fits the conditions desired and sent into the Warehouse
activity.
4.2.1. Attempt 1
As a first attempt, the following was added to the beginning of the model (Figure 34):
Figure 34 First attempt 1
The “Dx” activities separate the orders according to the label “destino”, value x goes into “Dx”.
37
The “Wx” accept a group of 10 at a time from the queue before.
The “Dx” activities are the same as the “For_shop_x” activities (Figure 35).
Routing in is set to batch by type, using “destino” as the label and the fixed value of x.
This gives us five queues with orders separated according to the label “destino”.
Figure 35 “Dx” properties
The “Wx” activities are similar to the Warehouse activity (Figure 36).
The difference being that they group ten instead of twenty orders.
The goal of this alteration would be to have two sets of ten being taken in as a set of twenty by
the activity Warehouse.
38
Figure 36 “Wx” properties
This new simulation gives us the following results (Figure 37):
Figure 37 Attempt 1 results
39
Comparing them with the previous results (Figure 38):
Figure 38 Results for the new routes
Everything is as expected, the time in the system went up but the average use of the trucks was
reduced.
4.2.2. Attempt 2
In order to improve this previous model a small
change was implemented.
The activities “Wx” now have zero duration and
the queue before the Warehouse activity has its
capacity limited to twenty orders (Figure 39 &
Figure 40).
This change was prompted by the fact that
sometimes the queue was getting thirty orders
stored at once, leading to the possibility of
having more than two destinies inside a twenty
order pack.
Figure 39 “Wx” properties
40
Figure 40 Storage Area 29 properties
This solution leads to the following results (Figure 41):
Figure 41 Attempt 2 results
The utilization of trucks stays the same but the average time in the system slightly decreases.
41
4.2.3. Attempt 3
For attempt number three two new resources and a new activity were added (Figure 42).
The new resources are similar to the
Schedule limit resource.
They are both shift dependent, with “Up to
16:50” having a 08:00-16:50 shift and “Last
10 min” having a 16:50-17:00 shift (Figure
43).
Figure 42 Attempt 3
Figure 43 Up to 16:50 properties
42
The “Wx” activities now require the resource Up to 16:50 to function while the new “WT”
requires the resource Last 10 min (Figure 44).
Figure 44 “WT” properties
The aim of this change is to remove the excess carts that had to wait overnight due to the
restrictive system by allowing the final ten minutes to pack any carts it has into any trucks it
needs.
It should lower the time in system of the carts.
This third attempt led to the final model (Figure 45).
43
Figure 45 Final Model
44
The results obtained were the following (Figure 46):
Figure 46 Attempt 3 results
These results keep the huge gain of the new solutions in terms of truck utilization, and they
come close to the original model in terms of average time within system.
The standard deviation is higher than the original model, but that is to be expected. This method
requires some carts to wait longer for a proper group and ensures that those that leave soon
after arrival make a quick trip, leading to lower minimums and higher maximums.
4.3. Validation of the final model
The various steps of improving the model serve as the validation of this model.
The incremental implemented changes produced the expected results.
The new routes did not change the results since twenty carts per truck meant on average there
would always be one for each shop.
Attempt 1 packed each truck with two sets of ten carts, each for a different shop. As expected
the use of trucks dropped drastically thanks to the new routes but the average time of the work
items in the system increased.
Note that the total time in system is roughly the time between the placement of an order and its
delivery. The time is system only stops counting when the truck returns to the warehouse so it
represents a number higher than the delivery time. But it serves its purpose as far as
comparisons with the original model and with each incremental change are concerned.
Attempt 2 was a correction of attempt 1.
45
A simul8 issue, the queue leading to the warehouse had no capacity limit leading it to
sometimes accumulate more than two sets of ten carts. This meant that some trucks could take
carts for three shops.
As expected, correcting this slightly decreased the time in system.
It was noted that the average number of orders that remained unattended overnight increased.
One extra truckload of orders remained in the warehouse each night, this could account for the
increase in time in the system.
This extra truckload was predictable since it is unlikely the last twenty orders will be two sets of
ten for two shops.
Attempt 3 dealt with this overnight orders excess.
This excess was fixed by adding a last truck that takes those last twenty carts no matter where
they need to go.
This leads to an improvement in the average time in system that comes close to the original
model.
Throughout all these changes the model behaved as expected.
4.4. Stabilization of the final model
Even though the four day warm up period is most likely still valid it is better to test the final
model just to be sure. With that in mind the average time in system depending on the number of
days the system has run was analysed (Figure 47).
The system seems to take longer to stabilize; only around day eight does the system reach a
point where the variation of the average time in the system stays in a range of 5% error.
So, in order to account for safety margin, ten days was the chosen warm up period.
46
Figure 47 Stabilization of the final system
4.5. Run time for the final model
In order to choose the run time for the model the average time in system and the % of truck use
were tested depending on the run time. The warm up of ten days was used.
As can be seen in Figure 48 and Figure 49 the results are fairly consistent from day forty
onward. The chosen run time for the model was forty days.
Within this simulation a day starts at eight in the morning and lasts fourteen hours.
Figure 48 Average time vs. Run time
250
270
290
310
330
350
370
390
410
430
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Aver
age
time
in sy
stem
(min
)
Days run
0
50
100
150
200
250
300
350
400
450
0 20 40 60 80 100 120 140
Aver
age
time
in sy
stem
(min
)
Run time in days
47
Figure 49 Truck utilization vs. Run time
4.6. Runs per trial
The runs per trial were calculated automatically by Simul8.
The values presented in the results so far (Table 4) were calculated with a 95% confidence limit.
With this demand Simul8 calculated the number of runs needed to ensure the precision
required. The number of runs varies with the experiences but the method remains the same
throughout the entire dissertation.
Time in System (min) Truck Runs
# Min Av Max SD Use
(%) Av #
Max#
Original Model 214.38 334.77 478.02 83.78 62.38 3.12 5 33
New Routes 214.08 333.97 477.93 84.01 62.22 3.11 5 33
Attempt 1 274.97 425.05 603.40 103.52 47.77 2.39 5 31
Attempt 2 270.34 414.41 593.63 101.75 47.64 2.38 5 30
Attempt 3 244.71 357.76 496.18 75.28 47.12 2.36 5 26
Table 4 Collected Results for the incremental changes
0,00%
10,00%
20,00%
30,00%
40,00%
50,00%
60,00%
0 20 40 60 80 100 120 140
Truc
k ut
iliza
tion
Run time in days
48
49
5. Results and Discussion
Since the goal is to improve upon it, the original model provides the baseline for this analysis.
The one day run time seems rather out of place considering the forty days arrived at for the final
model. Therefore, the original model and the final model need to be run again with the new
duration.
The first test to run is to check how the truck utilization and the average time in system vary for
this model when you change the number of trucks. The goal of this improvement was to reduce
the number or trucks needed. Whatever truck number is chosen, that number should be tested
in the original model and compared.
A final comparison of all the results is needed.
5.1. Original model and Final model both with five trucks
Both models were run with the new duration leading to the following results (Figure 50&Figure
51):
Figure 50 Original model results
Figure 51 Improved model results
50
Although the values changed the differences between the two remain similar to the ones in
attempt 3.
The final model has an inferior performance than the original one but the low truck utilization
should mean that the impact of removing a truck will be less than in the original model.
5.2. Varying the number of trucks available
The final model has a truck utilization of only 50.88% with five trucks available.
Such a low level of utilization is not desirable.
The model was tested using different numbers of trucks (Figure 52).
Figure 52 Average time and truck utilization vs. Nº of trucks
The minimum of three was considered since the average truck use is higher than two. Going
below the average truck use would lead to an eternal accumulation of orders.
There was no point in going higher than six trucks since even five already leads to a truck
utilization that is not desirable.
Between these solutions the best is quite likely the one with four trucks. It is impossible to be
sure without knowin how much money you actually save by removing one truck and whether
there is any loss incurred from the extra time in system.
All parcels are still delivered during the same day, it just takes a bit longer to clear the back
orders from the previous day. As long as this extra time does not lead to a rupture in stock
getting rid of one truck should end up saving money.
A more complex model using costs and shop stocks would be required to answer these
questions.
370
380
390
400
410
420
430
440
450
3 4 5 6
Aver
age
time
in sy
stem
(min
)
Nº of trucks
0,00%
10,00%
20,00%
30,00%
40,00%
50,00%
60,00%
70,00%
80,00%
90,00%
3 4 5 6
Truc
k ut
iliza
tion
(%)
Nº of trucks
51
Following this line of thought one might assume the three truck option should also be
considered. After all the parcels are still being delivered in the same day and you have fewer
trucks. The average time in system becomes rather high, but without measures to compare the
costs, it is hard to compare the two situations in theory.
In practice the three trucks solution is not viable since it has no leeway. With only three trucks
available any unexpected situation, a sudden increase in orders or a truck having mechanical
problems, could mean a rupture in the distribution chain if it goes on for too long.
So if the final model is run using four trucks (Figure 53), it has similar truck utilization to the original model with five trucks, one less truck, and a higher average time in system.
Figure 53 Improved model with four trucks
So, could the original model also lose one truck?
After running the original model with four trucks (Figure 54) it becomes clear that with four
trucks the final model is more desirable.
Figure 54 Original model with four trucks
52
5.3. Final discussion
A summary of the results of all the options has been collected into Table 5:
The values in the table are the average values, the number of trials run to obtain them is
presented in the last column.
Note that the maximum number of trucks used is the number of trucks available.
Model in use
Time in System (min) Truck Runs
# Min Av Max SD Use
(%) Av #
Max #
Original Model 155.54 360.94 613.91 89.05 63.57 3.18 5 12
Original Model 207.38 407.60 629.35 72.42 78.90 3.16 4 17
Final Model 197.94 384.43 700.07 88.05 50.88 2.54 5 14
Final Model 202.16 396.73 704.10 88.33 63.06 2.52 4 15
Table 5 Summary of the main options
The improved model is more efficient in terms of truck use, this leads to a better performance
with fewer trucks as seen in Table 5. With five trucks the original model has a better minimum
and average time in system, with four trucks the final model becomes the better option.
Due to waiting for the two sets of ten the final model ends up with some orders that take quite
long to process, this leads to higher maximum times in system.
Truck use is obviously lower in the final model due to the more efficient truck use. The original
model with five trucks and the final model with four trucks have similar utilization rates.
Between these two solutions it is assumed that thirty minutes will not cause stock rupture
making the final model with four trucks the more economical one.
As mentioned previously it is not known how much money you actually save by removing one
truck and whether there is any loss incurred from the extra time in system.
Since all orders are being delivered in the same day, as long as this extra time in system does
not lead to a rupture in stock there is no downside to it.
A more complex model using costs and shop stocks would be required to analyze these
questions.
Note that we are not taking into account the money saved in fuel by the new routes.
53
6. Conclusions and recommendations
This dissertation focused on the improvement of an already established model of a distribution
chain originally presented in Ana Moracho Velasco’s master dissertation.
Getting a grasp of some of the aspects involved in the process, especially in supply chain
management, which would be of interest for a goods manufacturer, retailer or different
organizations, gave me a broader perspective of the aspects involved.
By implementing and testing different solutions for this model, I was able to explore the potential
and features of the Simul8 software. Simul8 is quite flexible and user friendly and allows a wide
range of simulations to be run using the basic block.
One thing that was found lacking was the routing in option of the activities. I wanted to rout in
groups of 20 items from 2 different sources but the options merely allow for single source
groups.
While many companies prefer fixed routes for simplicity’s sake, this simulation shows that
adaptive routes provide a more efficient, in terms of truck use, way of distributing the goods to
the shops in this situation. This means, the adaptive routes work better with lower number of
trucks than the fixed routes.
As mentioned previously the fuel consumption was not taken into account; this variable would
tip the scale further to the side of routes that avoid certain shops.
For a more complete solution this and other peculiarities would have to be taken into account.
For instance, the stock of the shops being supplied might limit the time available for the goods
to arrive in order to avoid a rupture of stocks.
The overall company strategy plays an important role in logistics planning and this simulation is
but a simplified example of a supply chain.
In line with the goals of logistics the aim was to provide a cost effective and versatile system.
With the limited variables considered it was assumed that having fewer trucks in use would be
more cost effective since no stock rupture is expected in the shops due to the extra delay. With
that assumption the final solution was reached.
This dissertation has helped expand my knowledge in the area of logistics and gave me a better
understanding of the Simul8 software.
As further expansions to this model a mode where each truck carries carts for three shops
would be a good place to start. This could result in a lower time in system.
54
Following that the model could be expanded to simulate the stock of the shops. This would
require further information from real world examples.
Simulating the stock of all the products available in each shop would be far too complicated so
future work should focus on the most critical products. These products would be identified by
the relationship between the amount in stock and the typical rates of consumption.
A simplistic approach to the shops could keep the current mechanism for generating orders and
just include the shops as queues and the public consumption as an activity. This would not be
very accurate since shop 1 could have a higher consumption for a while leading to increasingly
shorter supplies while the orders were created with a lack of occurrences for that particular
shop. This means this simplistic approach would be far more likely to lead to rupture than a
realistic one. Keep in mind this means that if this approach does not lead to rupture then further
complexity is unnecessary.
A more complex approach would be to simulate the shops completely. Shops would still be a
queue but they would start with a full inventory. The activity that represents public consumption
would lead to another queue that would represent the “empty inventory”, items in that queue
would no longer be products but orders to be. Once that queue had enough work items they
would be sent back to the beginning of the simulation as orders, replacing the entry point. This
means that the new simulation would be a cycle.
If the previously mentioned expansion revealed small rupture of stock problems, costs would
have to be factored in to make a final decision.
Only costs that vary between the models have to be accounted for.
55
Bibliography
Carvalho, José Crespo (2010), Logística e Gestão da Cadeia de Abastecimento, Edições
Sílabo, Lisboa.
Christopher M, Peck H., (2004), Building the Resilient Supply Chain, Cranfield School of
Management, International Journal of Logistics Management, Vol. 15, Iss. 2, pp. 1-14.
Christopher, M. (1992). Logistics and Supply Chain Management: Strategies for Reducing Cost
and Improving Service. London: Pitman Publishing.
Christopher, M., (2005). Logistics and Supply Chain Management: Creating Value-Adding
Networks. Harlow: Financial Times Prentice Hall.
Concannon K., Elder M., Hindle K., Tremble J., Tse S., (2009), Simulation modeling with
SIMUL8, Simulation Solutions.
Cooper, Martha (1997), Supply Chain management, The International Journal of Logistics
Management, Vol. 8, Iss. 1, pp. 1-14.
Council of Logistics Management, (2013) – Definitions, http://scmanagement.blogspot.pt
/2004/10/clm-definition-of-supply-chain.html, accessed on 8 October 2013.
Jahangirian, Mohsen, Tillal Eldabi, Aisha Naseer, Lampros K. Stergioulas, and Terry Young.
(2010). "Simulation in manufacturing and business: A review." European Journal of Operational
Research no. 203 (1):1-13.
John T. Phelan, Jr. P.E., (2009), "Guest Column: Knowing When a WMS or WCS Is Right for
Your Company". Supply & Demand Chain Executive.
Lambert, D.M., Stock, R.J. e Ellram, L.M. (1998), "Fundamentals of Logistics Management",
McGraw-Hill International Editions.
Law, Averill M., (2013), How to Conduct a Successful Simulation Study. Proceedings of the
2003 Winter Simulation Conference. S. Chick, P. J. Sánchez, D. Ferrin, and D. J. Morrice, eds.
Oliver, R.K., Webber, M.D., (1982), “Supply-chain management: logistics catches up with
strategy”, Outlook, Booz, Allen and Hamilton Inc. Reprinted 1992, in Logistics: The Strategic
Issues, ed. M Christopher, Chapman Hall, London.
Oxford Advanced Learners Dictionary, (2005), 7th edition, Oxford University Press.
Robinson, Stewart, Zoe J. Radnor, Nicola Burgess, and Claire Worthington, (2012). "SimLean:
Utilising simulation in the implementation of lean in healthcare." European Journal of
Operational Research no. 219 (1):188-197.
56
Rohde, J. e Wagner, M., (2000), "Master Planning", in Supply Chain Management and
Advanced Planning: Concepts, Models, Software and Case Studies, (Stadtler, H. e Kilger, C.
Editors), Springer, pp. 117-134.
Supasansanee, L., Kasiphongphaisan P., (2009), Master Thesis, Logistics Management in
Retail Industry. A case study of 7-Eleven in Thailand.
Velasco A.M., (2012), Design of a Distribution Operation Using Discrete Event-Based
Simulation. Dissertation for the Degree of Master of Industrial Engineering, Universidade
Técnica de Lisboa.
Winsberg, Eric (2010), Science in the Age of Computer Simulation. The University of Chicago.
57
Annex 1 – Simul8 – A discrete event-based simulation software
This anex aims to provide the reader with a basic idea of what Simul8 can do.
The entities that Simul8 works with are called work items - . They can represent many things depending on the simulation in question.
In this project they are orders, carts and bundles of twenty carts.
Building blocks
Simul8 has five building blocks available for the user:
Start Point
An entry point that produces work items;
Queue
Stores work items between activities;
Activity
Any work happens within this building block
End
Exit point from the system;
Resource
Any particular resource required by an activity within the system.
58
In order to better explain the building blocks a small example model was created (Figure 55).
Figure 55 Example of a Simul8 model
All the building blocks have three shared sections:
Memo – In this section the user can write notes describing the building block in question;
Results – In this section the user can review the results related to that building block after
running the model;
Graphics – In this section the user can adapt the look of the building block selected.
Start Point
A Start Point creates work items (Figure 56).
The inter-arrival time is the time between arrivals of each consecutive work item.
This time can follow several standard distributions or even a customized one.
The first work item arrives according to the distribution picked. If the user desires a work item to arrive at the start of the simulation, he needs to tick the “First at start time” option.
Usually a Start Point feeds a Queue, if the unlimited arrivals option is chosen. However, the Start Point should rout out to an activity.
With the unlimited arrivals option the Start Point gives work items as the activity it routs out to requires.
Figure 56 Start Point Properties
59
You can turn off automated arrivals with the none option and set arrivals according to a file. Or you can have arrivals according to a Schedule Sheet.
The Start Point does not need to create a single work item at a time. With the batching option you can create a fixed amount of work items each time or have the number vary according to a distribution. By default it has a fixed distribution with a value of 1 (Figure 57).
Figure 57 Start Point Batching
You can also use the Actions section to set any label you desire on the newly created work items.
The results presented for a Start Point detail the number of work items that entered the system during the simulation and the number that was lost (Figure 58).
Figure 58 Start Point Results
Routing out details where the work items go to from the Start Point.
60
Queue
Queues are the storage bins of the program (Figure 59).
Their function is usually to store work items until the following activity can process them.
The capacity of a queue is infinite by default but it is possible to set a maximum value of work items it can hold at any given time.
Note that if a start point routs out to a queue that has limited capacity, it is possible that the queue will not have the space needed to store an incoming work item, and this work item will be lost.
Figure 59 Queue Properties
Shelf life starts out as none. If defined as a certain value, any work item that spends more time in the queue than that value will expire.
It is possible to set a queue that stores work items until they expire.
The minimum wait time forces the work items to wait at least that amount of time before they leave the queue. It can be set as a fixed value, as a formula or even as a value dependant on other building blocks.
By default the queues have a FIFO (first in first out) policy.
If a different order is desired the LIFO (last in first out) option will send out first the last work item to arrive at the queue.
The prioritize option organizes the items in the queue according to a label, giving priority to those with higher values.
The Start-Up section allows the queue to start with a number of work items already in store.
61
Figure 60 Queue Results
Queue results cover the number of
work items in the storage and the
queuing times throughout the
simulation (Figure 60).
It is also possible to segregate results according to one label.
The content section allows you to see the current contents of the queue. The work items, their respective labels and the label content.
It can be quite useful to examine what is going on during the simulation run (Figure 61).
Figure 61 Queue Content
62
Activity
An activity is where work happens (Figure 62).
The timing section has several different distributions available to represent the task you have in mind.
Like the start point, the activity has an actions section where you can change the labels or set new ones.
The replicate button allows you to “create” similar activities.
If the replicate value is higher than 1, then the simulation will consider the activity represents that number of similar activities running side by side.
Figure 62 Activity Properties
Priority defines the priority this activity has
within the simulation. By default all have the
same priority but that can be changed if the
user desires.
It is even possible to have the priority be
determined by the work item currently being
worked on.
Efficiency allows you to simulate breakdowns (Figure 63).
By default the efficiency is set at 100%, meaning no breakdowns, but it is possible to have randomly occurring breakdowns or fixed timing breakdowns.
Figure 63 Activity Efficiency
63
The resources section is where you define whether or not a resource is required for the activity
to function (Figure 64).
It is possible to require the resource at one activity and release it in another, representing a
courier for example that carries the work items.
You can also require one resource and release it as a different resource.
Figure 64 Activity Resource
The routing in and out sections regulate where work items come from and where they go to.
Aside from the multiple choices of routing out modes, you can multiply the number of work items leaving the activity by using the batching option in the routing out section.
The routing in section also provides many modes (Figure 65).
The default is priority.
Expired only is available to remove expired items from queues as previously described.
Collect allows you to collect multiple work items and even assemble them into a single new work item. This comes at a loss in label information since only one of the values can be saved in the new work item.
Plenty of other disciplines are available for other needs.
Among other options you can also batch by type, receiving only work items that have the desired label value (Figure 66).
64
Figure 65 Activity Routing In 1
Figure 66 Activity Routing In 2
65
The shifts section allows you to set a shift for the activity.
The results of an activity give you the number of work items in the activity, the number of
completed jobs and a distribution of the time according to use (Figure 67).
In this example the activity spent 8.49% of its time awaiting work.
Figure 67 Activity Results
End
The end is an exit point and the simplest building block available (Figure 68).
Like the queue it can segregate results based on a label.
If you wish you can end the simulation early by selecting Halt simulation at limit. This will shut down the simulation once the set number of work items has been processed.
Figure 68 End Properties
66
The end results give you the amount of work completed and the statistics concerning the time in
system (Figure 69).
Figure 69 End Results
Resource
Resources are anything that is required to complete the tasks the activities represent (Figure 70).
They can be shift dependent, with the number available depending on the shift they are currently on.
They can be pooled together. If a resource is pooled then all members of the pool will be acceptable for an activity that requires this one.
Figure 70 Resource Properties
67
If desired, the resource can have travel time between its storage area and its place of use (Figure 71).
Availability is to resources what efficiency is to activities. The resource is by default 100% available but you can set absences.
Resource results show the percentage of utilization the resources had and the units of resource in use during the simulation (Figure 72).
Figure 71 Resource Travel times
Figure 72 Resource Results
68
Simulation clock
In the clock properties you can select the time unit in use and the overall look of the time display
in your simulation (Figure 73).
More importantly you can select the running time.
The results collection period is the duration of the simulation during which results are collected.
Before that you have the warm up period.
This separation is available because many systems take a while to stabilize and the relevant
data can only be collected after the system is stable.
So the warm up period must be adjusted to allow the system to stabilize.
Figure 73 Clock Properties
69
Annex 2 – Tables
Warm up for the final model
Days Minutes Av Time Runs 1 840 318.41 7 2 1680 389.07 10 3 2520 402.32 6 4 3360 406.47 4 5 4200 405.82 4 6 5040 399.7 4 7 5880 393.03 4 8 6720 389.33 4 9 7560 385.67 4
10 8400 382.55 4 11 9240 383.12 4 12 10080 382.34 4 13 10920 379.76 4 14 11760 377.35 4 15 12600 376.46 4 16 13440 375.6 4 17 14280 374.53 4 18 15120 374.26 4 19 15960 378.33 4 20 16800 379.56 4
Run time for the final model
Days Minutes Av Time Truck Ut
Runs
1 840 375.73 50.04% 10 22 2 1680 372.89 51.12% 7 12 3 2520 366.26 49.09% 5 8 4 3360 365.93 48.91% 4 5 5 4200 365.36 48.45% 4 5 6 5040 364.14 48.24% 4 6 7 5880 363.58 48.10% 5 6 8 6720 363.85 47.68% 4 5 9 7560 373.56 49.13% 4 5
10 8400 376.72 49.69% 4 5 11 9240 380.34 50.19% 4 5 12 10080 383.14 50.55% 4 5 13 10920 385.42 50.91% 4 5 14 11760 387.11 51.17% 4 5
70
15 12600 388.67 51.44% 4 5 16 13440 390.19 51.60% 4 5 17 14280 391.86 51.82% 4 5 18 15120 394.15 52.10% 4 5 19 15960 395.9 52.32% 4 5 20 16800 396.96 52.39% 4 5 21 17640 397.45 52.43% 4 5 22 18480 397.18 52.33% 4 5 23 19320 397.32 52.57% 4 4 24 20160 395.73 52.27% 4 4 25 21000 394.07 52.05% 4 4 26 21840 393 51.97% 4 4 27 22680 391.79 51.78% 4 4 28 23520 390.91 51.64% 4 4 29 24360 389.77 51.44% 4 4 30 25200 388.66 51.26% 4 4 35 29400 385.1 50.81% 4 4 40 33600 382.31 50.40% 4 4 45 37800 380.98 50.34% 4 4 50 42000 379.48 50.09% 4 4 55 46200 378.4 49.92% 4 4 60 50400 377.07 49.77% 4 4 70 58800 375.37 49.62% 4 4 80 67200 374.09 49.49% 4 4 90 75600 372.74 49.29% 4 4
100 84000 371.71 49.14% 4 4 120 100800 371.31 49.17% 4 4 140 117600 378.53 50.10% 4 4 160 134400 383.3 50.71% 4 4 180 151200 387.18 51.22% 4 4 200 168000 390.23 51.59% 4 4
Truck number for the final model
Trucks Av Time Truck Ut
Runs
3 438.09 81.56% 4 4 395.49 62.86% 4 5 383.02 50.59% 4 6 380.14 42.33% 4