Professional Documents
Culture Documents
PROJECT 2
1. Description of the modelled system.
The system consists of a container terminal where trucks arrive with containers inside.
Once at the terminal, containers are unloaded from the trucks, which leave the system
once they are empty. Unloading times are exponentially distributed with a mean value
equal to 9 minutes.
Then, containers must pass a technical inspection whose time follows the exponential
distribution with the mean value equal to 27 minutes. By this inspection we find that
approximately 6 percent of containers are in bad state, so they have to be repaired.
Time of reparation is exponentially distributed with a mean value equal to 68 minutes.
After technical inspection, or reparation in case of containers that were in
unsatisfactory condition, containers have to go to customs inspection.
Customs inspection time follows a truncated normal distribution with a mean value of
21 minutes and a deviation of 5 minutes. So, the distribution can take values from the
interval <μ – 3σ; μ + 3σ > = <21-15; 21+15> = <6; 36>.
Containers leave the terminal by train. Once the customs inspection is done,
containers must wait in a storage place to be loaded on the train. The capacity of this
storage area is 10 containers and the capacity of the train leaving the terminal is 10,
20, 30 or 40 containers with probabilities 0,15; 0,25; 0,25 and 0,35. We consider that
wagons are always available in the terminal to load containers. The loading time per
one container is exponentially distributed with the mean value equal to 11 minutes.
Finally, when the capacity of the train is full, it leaves the system.
There is also a reach stacker whose job is uploading and loading the containers. He
works every day from 6 AM to 6 PM with three breaks from 9:00 to 9:15, from 12:30 to
13:15 and from 16:00 to 16:15.
1
Project 2
Logistic Systems Planning
Paula García Geijo
94%
Unloading Inspection Customs Storage Loading
6%
Repairing
Empty truck
Container
Empty train
Reach stacker
2
Project 2
Logistic Systems Planning
Paula García Geijo
Basic elements have some characteristics that are selected depending on the modelled
system. In this container terminal:
Parts
Trucks are active because they arrive at random intervals instead of whenever an
element needs them. There isn’t a maximum number of parts that can arrive at the
simulation during a single run of the model. Whatever the time of the simulation,
trucks don’t stop arriving. First arrival time is the simulation time at which the first
part arrives at the model. Inter arrival time is the amount of time that elapses
between the arrival of each part. Both of them are defined by an exponential
distribution whose mean time equals to 20 minutes. We use the function NEGEXP(EX)
to define this exponentially distributed values. Lot size is the number of parts that
arrive at the system at the same time. As trucks arrive at the system one-by-one, lot
size equals to 1. Shift is the period of time when the trucks arrive at the system. It is
from 6 AM to 6 PM and is defined in the variable called Shift2.
3
Project 2
Logistic Systems Planning
Paula García Geijo
Containers and trains are passive parts because there is an unlimited supply of them.
Containers and trains arrive at the model whenever an element needs them.
Machines
we have to define the part that is produced in this machine and the production
quantity is the number of containers that the machine produces at one cycle time.
Cycle time defines the time that the machine takes to process the parts. In this model
it is defined by an exponential distribution whose mean time is 9 minutes. As we have
done for trucks, we have to use the function NEGEXP(EX) to define exponentially
distributed values.
Input: 1 part
Loaded Truck Output: 2 parts
Empty Truck
Production
+
machine Container
Inspection. It is a single machine because it processes one part at a time (one part
enters and one part leaves). Cycle time defines the time that the machine takes to
5
Project 2
Logistic Systems Planning
Paula García Geijo
Single
machine
Input: 1 part Output: 1 part
Container Container
Repairing. It is a single machine like inspection because it processes one part at a time
(one part enters and one part leaves). Cycle time is defined by an exponential
distribution whose mean time is 68 minutes. We use again the function NEGEXP(EX) to
define exponentially distributed values.
6
Project 2
Logistic Systems Planning
Paula García Geijo
Single
machine
Input: 1 part Output: 1 part
Container Container
Customs. It is another single machine because it processes one part at a time. Cycle
time is defined by a truncated normal distribution with a mean value of 21 minutes
and a deviation of 5 minutes. This type of distribution can take values from the interval
<μ – 3σ; μ + 3σ >. In this case μ=21 minutes and σ=5 minutes, so the minimum and
maximum values are:
min = μ – 3σ = 21 – 15 = 6
max = = μ + 3σ = 21 + 15 = 36
Therefore, the values of the distribution are within the interval < 6; 36 >. We use the
function TNORMAL(μ, σ, min, max) to define this truncated normal distributed values.
7
Project 2
Logistic Systems Planning
Paula García Geijo
Single
machine
Input: 1 part Output: 1 part
Container Container
8
Project 2
Logistic Systems Planning
Paula García Geijo
Input: Capacity + 1
Buffer
Storage. It is defined by its capacity, which is the maximum number of parts that it can
contain. In this model the capacity of the buffer is 10. There are three options related
to the situation of the parts and the time that they spend in the buffer. For input
option we have select that parts must be placed in the rear part of the buffer when
they enter it. In delays option you can define the length of time that parts spend in
the buffer, but we haven’t define it. Finally, for output option we have indicated that
Loading_container machine must take the first container from the front part of the
storage to process it.
9
Project 2
Logistic Systems Planning
Paula García Geijo
Labor
10
Project 2
Logistic Systems Planning
Paula García Geijo
11
Project 2
Logistic Systems Planning
Paula García Geijo
Capacity. It is an integer variable which represents the capacity of the incoming trains.
In the part train we write the following sentence to define its capacity:
Capacity = How_many_containers ()
This ensures that the capacity of every new train will be the number created by the
previous empirical distribution with the appropriate probability.
Loading_time. It is a real variable which represents the time that takes the process of
loading the containers in the train. We know that the loading time per one container is
exponentially distributed with the mean value equal to 11 minutes. So, the
loading_time depends on the capacity and that exponential distribution.
As we can remember, the number of containers that the train is going to carry is
recorded in the variable called Capacity. Order_of_cont is another important variable
in the definition in loading_time. The whole loading time is the sum of the loading time
of each container loaded in the train. Each of this loading time follows the exponential
distribution with a mean value of 11 minutes.
NEGEXP (11)
Container 1
+ NEGEXP (11)
Container 2
+ NEGEXP (11)
Container 3
… NEGEXP (11)
Container N
Loading time
Capacity = N
12
Project 2
Logistic Systems Planning
Paula García Geijo
We can define loading_time with the following function, which we have to write as an
action on create in the part train. In this way, every time a train is created, its loading
time is calculated according to its capacity:
Loading_time = 0
NEXT
This function goes from the first container until the last one (capacity) and calculate for
each of them their own exponential distribution and adds the new calculated value to
the previous. This allows obtaining the real value of the variable loading_time that we
will use to define the cycle time of the loading_container machine.
Shifts
There are two different shifts in this model:
Shift1. This shift is for stacker. He works every day from 6 AM to 6 PM with three
breaks from 9:00 to 9:15, from 12:30 to 13:15 and from 16:00 to 16:15. So, there are 5
periods in one day:
13
Project 2
Logistic Systems Planning
Paula García Geijo
The cycle time is 1440 min (24 hours = 1 day) and it is composed by a working time of
645 min (10 h + 45 min) and a rest time of 795 min (13 h + 15 min)
To associate this shift to the stacker we have to select in the part stacker shift1.
Shift2. This shift is for trucks. Trucks arrive at the terminal every day from 6 AM to 6
PM.
14
Project 2
Logistic Systems Planning
Paula García Geijo
The cycle time is 1440 min (24 hours = 1 day) and it is composed by a working time of
720 min (12 h) and a rest time of 720 min (12 h)
To associate this shift to the trucks we have to select in the part truck shift2.
We have to define also the input and output rules, in other words, how parts move
through the model. Buffers are passive. Therefore, is not possible to define input or
output rules for the Storage. We have to define it for parts and machines. The input
and output rules we have used are the followings:
15
Project 2
Logistic Systems Planning
Paula García Geijo
Repairing Customs. The input of inspection is “Wait” again. For the output,
the containers are pushed to Customs.
Customs Storage. The input of Customs is “Wait” once more time. For the
output, the containers are pushed to Storage.
16
Project 2
Logistic Systems Planning
Paula García Geijo
Loading_container. This machine has two different inputs: one train that is
pushed to it when the machine needs it and several containers whose number
is the capacity of the train. The containers must wait in the storage until the
machine loading_container take them to be loaded. We have define this
process with the input rule SEQUENCE: SEQUENCE /Wait Train out of
WORLD#(1), Storage#(Capacity). The output of the machine is the same for
trains and containers. Both of them are pushed to ship. They left the system.
Objective variables
To show the statistics of the simulation we have defined a real variable and an integer
variable:
17
Project 2
Logistic Systems Planning
Paula García Geijo
Processed_containers = Processed_containers + 1
Every time a container leaves the machine customs the variable processed_containers
is increased by one. We calculate the value of this variable in the machine customs
because, in this model, the container is considered processed if it has left the this
machine.
Rejected_trucks. This real variable represents the number of trucks that have been
rejected. If a truck arrives at the system and the machine loading_containers is busy,
this truck is rejected and sent out of the system without being processed. That means
that this truck and the container inside are lost.
NCREATE. This function returns the number of trucks that have been created
(including those that were rejected on arrival at the model because the
machine is occupied). This is the total number of parts.
NREJECT. This function returns the number of trucks of this type that have been
rejected on arrival at the model. These are the parts that are lost.
To define this variable we have to write the following function as an action on create
on the part truck:
The time of the simulation is 30 days. We have used minutes as unit of time, so the
simulation time equals to 30*1440 minutes.
18
Project 2
Logistic Systems Planning
Paula García Geijo
Simulation: 30 days
There are a lot of trucks that are rejected, so we should optimize the system to avoid
the bottle necks.
The optimization of the model consists on make several changes to increase the
number of processed containers and decrease the number of trucks rejected upon
their arrival in the same time of simulation: 30 days.
The objective is to achieve the lower number of rejected trucks with a maximum of 5
changes.
1. FIRST CHANGE. Increase the quantity of inspection machines. First of all I have
increased the number of inspection machines. Now, there are two inspection
machines and these are the new values of the variables:
2 x Inspection machine
Processed containers 511 containers
Rejected trucks 51.88%
The number of processed containers has been increased and the number of
rejected trucks is lower than the first one, so we can say that this is a good
change.
2. SECOND CHANGE. Add a new buffer. Another change that I have done is to
add a new buffer in the input of the unloading_container machine with a
capacity of 10 containers. For that, we have written in the input of
19
Project 2
Logistic Systems Planning
Paula García Geijo
New buffer
Processed containers 673 containers
Rejected trucks 35.93%
With this change the number of processed containers is higher than the
previous ones and the rejected trucks have decreased. So, this change is also
positive.
2 x Stacker
Processed containers 826 containers
Rejected trucks 21.63%
With this change there are more processed containers and less rejected trucks,
as we wanted.
4. FOURTH CHANGE. Increase the capacity of the buffer Storage. With the
increased number of processed containers the capacity of 10 containers of the
Storage is too low, so I have increased it 10 units. Now, the storage has a
capacity of 20, which has enable the increase of the number of processed
containers and the decrease of the rejected trucks as we can see in the
following table:
Storage +10
Processed containers 934 containers
Rejected trucks 11.99%
20
Project 2
Logistic Systems Planning
Paula García Geijo
5. FIFTH CHANGE. Increase the quantity of custom machines. Finally, the fifth
change is in customs. Processed containers are the containers that have left this
machine. Therefore, if we increase the number of customs machine, the
number of processed containers will increase too. With two customs machines
these are the results:
2 x Customs
Processed containers 1021 containers
Rejected trucks 4.03%
As we can see, with the five changes there is a big increase of processed containers
and the rejected trucks have decreased a lot too.
The changes in the model have been analyzed as they were added. Every time a
change was added, the results changed. I haven’t analyzed every change individually
because there are some changes that are done due to another change. The individual
analysis of this type of changes, like the increase of the number of stackers, hasn’t got
any sense. That’s why I have shown the results as I added a new change.
4. Conclusions
As conclusion of this simulation of the system, we can say that there are some bottle
necks in the original system that can be solved with some modifications in the
elements of it, near where the bottle neck is.
21
Project 2
Logistic Systems Planning
Paula García Geijo
we have optimized the system adding another inspection machine and a buffer
in the input of unloading_containers.
Loading_containers, because the containers have to wait in the storage until
there are enough containers ready to be loaded and fill the train capacity. If we
increase the number of custom machines containers are processed faster and
they are ready sooner to be loaded. The capacity of the storage is also quite
low. The capacity of the trains varies between 10 and 40 and the capacity of
the storage is only 10. Therefore, the increase of the number of custom
machines and the capacity of the storage has optimized the system.
The increase of the number of stackers has also helped to improve the system
because with two stackers, both unloading and loading containers machines
can be processing at the same time.
If we make the correct changes in the correct element or place the results will be very
successful. As we can see in the previous table, with only 5 changes the results
obtained have been incredibly improved. The number of processed containers is more
than double the first value. On the other hand, the rejected trucks, whose value was
higher than 60%, now it is lower than 5%.
In conclusion, if we want to improve our system, the best way is to find the bottle
necks and solve them making some little changes where the bottle necks are. In this
way, we will get a system much more efficiently.
22