Professional Documents
Culture Documents
0
1
D
D
1
D
m1
0
1
D
m2
D
2
X
1-2 1-1
D
Fig. 1. Triangular and trapezoidal fuzzy numbers.
H. Zhang et al. / European Journal of Operational Research 164 (2005) 715729 717
In this improved AS simulation strategy, there
are three parts in which operations on times are
needed.
Initiation of a start event or activation of an
activity, where the start time of an activity is
determined; T
S
i max
j1;...;J
fT
A
i; jg, where
J is the total quantity of the entities (i.e. resources
and logical dependencies) required by activity i;
T
S
i is the start time of activity i; T
A
i; j is the
available time of entity j at activity i.
Determination of the due time of an end event,
which should equal the start time of the cur-
rent activity plus its activity duration; T
EE
k
T
S
i Di, where T
EE
k is the due time of
end event k, recorded in the end event list;
Di is the duration of activity i.
Simulation advancement and end event selec-
tion, that is, the simulation time is updated
from the current time to the time of next one
or more end events that will happen the earliest
and the end events that are due at the updated
simulation time will be selected for initiation;
m Now min
k1;...;K
fT
EE
kg, where m Now is
the simulation time and K is the number of
end events recorded in the end event list.
When fuzzy numbers are used to represent
activity durations, all the times in the above
operations become fuzzy numbers. Hence the
above operations can be expressed in fuzzy arith-
metic operations as follows:
T
S
i max
j1;...;J
fT
A
i; jg; i 1; . . . ; I 2
T
EE
k T
S
i Di; k 1; . . . ; K; i 1; . . . ; I;
3
m Now min
k1;...;K
fT
EE
kg; 4
where I is the total number of activities. The
operation (3) is a fuzzy addition. If the fuzzy
duration of activity i is D
1
i; D
m1
i; D
m2
i;
D
2
i, the fuzzy occurring time of end event k is
T
EE
1
k; T
EE
m1
k; T
EE
m2
k; T
EE
2
k, and the fuzzy
start time of activity i is T
S
1
i; T
S
m1
i; T
S
m2
i;
T
S
2
i. Therefore, the fuzzy arithmetic operation
(3) has the following form:
T
EE
1
k; T
EE
m1
k; T
EE
m2
k; T
EE
2
k
T
S
1
i
D
1
i; T
S
m1
i D
m1
i; T
S
m2
i
D
m2
i; T
S
2
i D
2
i
;
i 1; . . . ; I; k 1; . . . ; K: 5
The fuzzy operations (2) and (4) require comparing
fuzzy numbers, i.e. the fuzzy number ranking
problem. The simplest ranking method is to con-
vert fuzzy numbers into a series of crisp numbers
and then compare them (Chen, 1985; Liou and
Wang, 1992). However, this crisp-ranking method
may lose much of the information that is purposely
kept throughout fuzzy operations (Bortolan and
Degani, 1985; Yufei, 1991). Of course, the fuzzy
ranking problems are more complicated, especially
when the ranked fuzzy numbers overlap or
intersect as shown in Fig. 3. For a fuzzy discrete-
event simulation that models complex construction
operations, the fuzzy simulation time, multiple
fuzzy times of end events and many fuzzy available
times of entities may encounter such overlapping
or intersection at a certain time interval.
4. Selection of a fuzzy ranking measure
Bortolan and Degani (1985) as well as Wang
and Kere (2001a,b) presented a comprehensive
survey of the available fuzzy number ranking
methods. Almost every method, however, has its
pitfalls in some respects, such as inconsistency with
human intuition, indiscrimination and diculty of
interpretation, implying the non-existence of a
Start 1 Start 2 Start 3 Start 4
End 1 End 3 End 2
m_Now 1=0 m_Now 2 m_Now 3 m_Now 4
1 2 3 4 5 6 7
Simulation advancement (m_Now)
Fig. 2. Time advancement in the AS-based simulation strategy.
718 H. Zhang et al. / European Journal of Operational Research 164 (2005) 715729
unique or best fuzzy number ranking method.
Suggested evaluation criteria (Bortolan and De-
gani, 1985; Chen and Hwang, 1992) to select a
reasonable ranking method include complexity,
robustness, exibility, transitivity, and ease of
interpretation, which are detailed as follows:
Complexity means the amount of computation
and the diculties in implementing the ranking
method.
Robustness refers to the ability of consistent
ranking for a diversity of cases, including the
ability to compare fuzzy and crisp numbers.
Flexibility means the ability to compare dier-
ent shapes of fuzzy numbers (e.g. triangular
and trapezoidal) and allow participation of
decision makers in the process.
Transitivity refers to the ability of giving a con-
sistent conclusion in the comparison of more
than two fuzzy numbers.
Ease of interpretation is important to decision-
makers.
A fuzzy ranking measure (Tran and Duzkstein,
2002) possesses several advantages listed above
and can overcome problems inherent to the exist-
ing ranking methods, especially when used for
fuzzy discrete-event simulation. For instance, easy
implementation of this fuzzy ranking method en-
ables it to be integrated with the simulation algo-
rithm for discrete-event simulation. Its ability to
compare fuzzy numbers with crisp values is useful
because a discrete-event simulation generally sets
crisp initial simulation time (start point) or crisp
simulation time limit (end point). The exibility of
ranking either triangular or trapezoidal fuzzy
numbers provides more choices to describe the
fuzzy activity duration. Keeping consistent results
among more than two fuzzy numbers is also
important because multiple fuzzy times may be
simultaneously ranked during simulation. Based
on the above descriptions, the fuzzy ranking
measure (Tran and Duzkstein, 2002) is chosen to
accomplish the fuzzy time ranking in simulation
advancement for fuzzy discrete-event simulation
if triangular or trapezoidal fuzzy numbers are
used to describe uncertain activity durations.
The fuzzy ranking measure (Tran and Duzk-
stein, 2002) is built based on comparison of from
fuzzy numbers (i.e., triangular and trapezoidal
fuzzy numbers) to some predetermined targets: the
crisp maximum (Max) and the crisp minimum
(Min). The idea is that a fuzzy number is ranked
rst if its distance to the crisp maximum (D
max
) is
the smallest but its distance to the crisp minimum
(D
min
) is the greatest. Hence this fuzzy ranking
measure is also called fuzzy distance measure by
Tran and Duzkstein (2002). The Max and Min are
chosen as follows:
Min 6 inf
[
I
i1
sAi
!
; 6
Max P sup
[
I
i1
sAi
!
; 7
where sAi is the support of fuzzy numbers Ai
(i 1; . . . ; I) to be ranked. Based on the formulae
for the fuzzy ranking measure (Tran and Duzk-
stein, 2002), the formulae to compute D
max
and
D
min
for the trapezoidal fuzzy number A
(a
1
; a
2
; a
3
; a
4
) are as follows:
when the weighting function f a a:
D
2
A; M
a
2
a
3
2
1
3
a
2
a
3
2
a
4
a
3
a
2
a
1
2
3
a
3
a
2
2
2
1
9
a
3
a
2
2
a
4
a
3
a
2
a
1
1
18
a
4
a
3
2
a
2
a
1
1
18
a
4
a
3
a
2
a
1
; 8
Time 2 Time 3 Time 4 Time 5
0
Time
Time 1
1
Fig. 3. Overlapping or intersecting fuzzy numbers to be ranked.
H. Zhang et al. / European Journal of Operational Research 164 (2005) 715729 719
when the weighting function f a 1:
D
2
A; M
a
2
a
3
2
1
2
a
2
a
3
2
a
4
a
3
a
2
a
1
1
3
a
3
a
2
2
2
1
6
a
3
a
2
2
a
4
a
3
a
2
a
1
1
9
a
4
a
3
2
a
2
a
1
1
9
a
4
a
3
a
2
a
1
; 9
where a
1
, a
2
, a
3
, and a
4
represent the four
parameters describing the trapezoidal fuzzy num-
ber A. M is either Max or Min. Hence, D
min
D
2
A; Min
p
and D
max
D
2
A; Max
p
. f a is a
continuous increasing function adopted in the
original formula (Tran and Duzkstein, 2002),
serving as a weighting function for computing
weighted sum of distances (Tran and Duzkstein,
2002). The f a and a are all between 0 and 1. The
f a is normally chosen to be equal to 1 (constant)
or a, depending on decision-makers or practitio-
ners preference. Generally, for risk-prone deci-
sion-makers, f a 1 is used; for risk-averse or
risk-neutral decision-makers, f a a is used
(Tran and Duzkstein, 2002). Because the trape-
zoidal fuzzy number Aa
1
; a
2
; a
3
; a
4
can be chan-
ged to a triangular fuzzy number (i.e., Aa
1
; a
2
; a
4
)
if a
2
a
3
, the above formulae are applicable to
the triangular fuzzy number.
5. Fuzzy simulation advancement algorithm for
fuzzy discrete-event simulation
The selected fuzzy ranking measure is applied to
rank fuzzy times for fuzzy simulation advance-
ment and is developed into two fuzzy arithmetic
algorithms that are incorporated with the im-
proved AS simulation strategy of discrete-event
simulation.
5.1. Fuzzy-time-management algorithms based on
fuzzy ranking
No matter whether the times (e.g. start event
times, end event times, or entity available times) are
crisp or fuzzy, these times range from the simula-
tion start time (i.e. 0) to the simulation stop time
or simulation time limit (represented as m STL).
Therefore, the Min and Max in Eqs. (6) and (7)
are 0 and m STL, respectively. As a time-control
method for discrete-event simulation, it is unnec-
essary to consider decision-makers risk-proneness,
i.e. f a 1. Hence, Eq. (8) for f a a is used to
compute D
min
and D
max
for ranking the fuzzy times.
In order to comprehensively consider D
min
and
D
max
in ranking fuzzy times, two steps are adopted.
The rst step is to compute D
min
Min 0 for the
fuzzy numbers and then decide that a fuzzy num-
ber with a smaller D
min
is smaller, or a fuzzy
number with a larger D
min
is larger. When this step
fails to rank the fuzzy numbers, that is, the D
min
of
the fuzzy times are equal, the second step is used.
The D
max
Max m STL is computed in the sec-
ond step and then decide that a fuzzy number with
a smaller D
max
is larger, or a fuzzy number with a
larger D
max
is smaller. If the D
max
of the fuzzy times
are still found to be equal, these fuzzy times are
considered to be equal.
Therefore, the determination of the fuzzy start
time of an activity, i.e. operation (2), can be
accomplished through the following steps:
Step 1: For the activity i that is satised with
start conditions (i.e. logical feasibility and
resource requirements), initialize T
max
0; 0; 0; 0.
Step 2: For each entitys fuzzy available time,
i.e. T
A
i; j T
A
1
i; j; T
A
m1
i; j; T
A
m2
i; j;
T
A
2
i; j, compute the D
min
T
A
i; j; 0
through Eq. (8).
Step 3: Compute the D
min
T
max
; 0 through Eq.
(8).
Step 4: If D
min
T
A
i; j; 0 > D
min
T
max
; 0 then
T
max
T
A
i; j
T
A
1
i; j; T
A
m1
i; j; T
A
m2
i; j; T
A
2
i; j
:
Step 5: If D
min
T
A
i; j; 0 D
min
T
max
; 0 then
compute the D
max
T
A
i; j; m STL for each
entitys fuzzy available time T
A
i; j
through Eq. (8).
Step 6: Compute the D
max
T
max
; m STL through
Eq. (8).
720 H. Zhang et al. / European Journal of Operational Research 164 (2005) 715729
Step 7: If D
max
T
A
i; j; m STL6D
max
T
max
; m STL
then
T
max
T
A
i; j
T
A
1
i; j; T
A
m1
i; j; T
A
m2
i; j; T
A
2
i; j
:
Step 8: Repeat steps 27 until all entities required
by activity i are scanned.
Step 9: Get the start time of activity i, that is,
T
S
i T
max
.
On the other hand, operation (4) that deter-
mines the next time that the current simula-
tion time will advance to contain the following
steps:
Step 1: Initialize T
min
m STL; m STL; m STL;
m STL.
Step 2: Scan end event list, compute the
D
min
T
EE
k; 0 for each event-ends due
time, i.e.
T
EE
k T
EE
1
k; T
EE
m1
k; T
A
m2
k; T
A
2
k;
through Eq. (8).
Step 3: Compute the D
min
T
min
; 0 through Eq.
(8).
Step 4: If D
min
T
EE
k; 0 < D
min
T
min
; 0 then
T
min
T
EE
k
T
EE
1
k; T
EE
m1
k; T
EE
m2
k; T
EE
2
k:
Step 5: If D
min
T
EE
k; 0 D
min
T
min
; 0 then
compute the D
max
T
EE
k; m STL for each
entitys fuzzy available time T
EE
k
through Eq. (8).
Step 6: Compute the D
max
T
min
; m STL through
Eq. (8).
Step 7: If
D
max
T
EE
k; m STL PD
max
T
min
; m STL
then
T
min
T
EE
k
T
EE
1
k; T
EE
m1
k; T
EE
m2
k; T
EE
2
k:
Step 8: Repeat steps 27 until all end events are
scanned.
Step 9: Get the next time the current simulation
time will advance to, that is, m Now
T
min
.
Because a triangular fuzzy number and a crisp
variable can be respectively represented by a
trapezoidal fuzzy number, that is, D
1
; D
m1
; D
2
D
1
; D
m1
; D
m1
; D
2
and D
1
D
1
; D
1
; D
1
; D
1
, all the
above algorithms are applicable to the triangular
fuzzy number-described activity duration or the
crisp activity duration.
5.2. Incorporation of fuzzy time management
with the improved as simulation strategy
The above fuzzy arithmetic algorithms for
fuzzy time management based on the fuzzy
ranking measure should be incorporated with the
improved AS simulation strategy so as to advance
simulation experimentation. The occurring times
of start and end events as well as the selection of
end events should be dynamically determined
through the two fuzzy algorithms. The fuzzy
advancement algorithm of the improved AS
simulation strategy is presented in the owchart
shown in Fig. 4.
When a simulation experiment begins, the
simulation time is initialized at (0, 0, 0, 0) (i.e. a
crisp value 0) and the end event list is set to be
empty. For each fuzzy simulation time (m Now)
that has been advanced to, all end events that are
due at the current time will be activated, includ-
ing releasing involved entities (i.e. resources and
logical dependencies), which will be allocated
again. When all end events due at the current
time (m Now) are activated, the simulation time
limit (m STL) and all activities cycle limits will be
checked and stop the simulation experiment if
they are exceeded. After releasing and allocating
entities involved in the activities that have com-
pleted so far, all activities will be scanned to see
which are satised with start conditions. The
current simulation time will not be advanced
until no activities are satised with start condi-
tions. The simulation experiment will be ter-
minated when the simulation time limit (m STL)
is exceeded or when all activities cycle limits
H. Zhang et al. / European Journal of Operational Research 164 (2005) 715729 721
are exceeded even if m STL is not exceeded.
Here an activitys cycle limit is used to control a
repetitive activity operation required in a pro-
ject.
Start
Scan end event list to
select end event due
at m _ Now?
Remove the current
end event from the
event list
Advance the current
simulation time:
{ }
) (k T m _ Now = min
EE
k=1,...,K
Stop
Allocate these entities
by updating their
positions
Yes
No
Yes
No
Have end event
due at
m_Now?
No
Yes
Have activity
satisfied with start
conditions?
Initialize
simulation time,
end event list,
and others
Exceed m_STL or
all activities cycle
limits?
Scan Activities