Upload
pranab-k-muhuri
View
212
Download
0
Embed Size (px)
Citation preview
Real-time task scheduling with fuzzy uncertainty
in processing times and deadlines
Pranab K. Muhuri *, K.K. Shukla
Department of Computer Engineering, Institute of Technology, Banaras Hindu University, Varanasi 221005, India
Received 29 November 2004; accepted 21 June 2006
Available online 15 December 2006
Abstract
In real-time systems, scheduling algorithms play the vital role of devising a feasible schedule of the tasks. The scheduling algorithm designer
faces uncertainty associated with the timing constrains of the real-time tasks. This paper considers fuzzy timing constraints by modeling the real-
time tasks with fuzzy deadlines and fuzzy processing times with different membership functions. Comparative studies and some interesting
findings based on simulation experiments are reported.
# 2006 Elsevier B.V. All rights reserved.
Keywords: Fuzzy deadlines; Fuzzy processing times; Real-time systems; Task scheduling
www.elsevier.com/locate/asoc
Applied Soft Computing 8 (2008) 1–13
1. Introduction
Computing systems where catastrophe may occur or results
may become useless if tasks completion takes more than some
specified time are known as real-time systems [11]. Tele-
communication systems, defense systems, aircraft flight control
systems, air traffic control, space stations, nuclear power plants,
etc. depend solely on real-time computing and are examples of
real-time systems. Real-time systems draw attention to various
issues especially in scheduling, resource allocation and
communication between components and subsystems, etc.
Three main measures that count the merits of real-time systems
are: predictably very rapid response to urgent events, high
degree of schedulablity (i.e. surety of feasible schedule) and
stability during transient overload [19]. Several scheduling
algorithms have been proposed, the main duty of which is to
ensure that tasks are complying their deadlines. Hence, Task
scheduling is very much essential and plays a crucial role in
real-time systems. Task scheduling in real-time systems aims
towards devising a feasible schedule, subject to a given set of
tasks and task characteristics, timing constraints, resource
constraints, precedence constraints, etc. The timing constraints
of a particular set of tasks comprises of task deadlines,
* Corresponding author.
E-mail addresses: [email protected] (P.K. Muhuri),
[email protected] (K.K. Shukla).
1568-4946/$ – see front matter # 2006 Elsevier B.V. All rights reserved.
doi:10.1016/j.asoc.2006.06.006
processing times, task arrival or release times, intervals
between subsequent invocations of tasks i.e. period, etc. The
release time of task is the time before which it can not start
execution, where as the time within which a task must be
completed after it is released is known as the relative deadline
of that particular task. Release time plus the relative deadline
gives the absolute deadline of a task. The time required by the
processor to execute a particular task is known as the processing
time or execution time. Tasks may be periodic, aperiodic or
sporadic. When tasks are released periodically they are periodic
tasks. An invocation of sporadic tasks happens in irregular
intervals rather than periodically where as aperiodic tasks are
not periodic nor carry any bound on invocation rate. Computing
applications of time critical systems require satisfying explicit
time constraints of the tasks under process and hence these
timing constraints plays the most important role for the
purposeful and safe operation of real-time systems.
The landmark work of Liu and Layland [8] was the first
major breakthrough in real-time scheduling research. There-
after several works have been done for scheduling real-time
tasks with crisp timing constraints. Aydin et al. [3] have
proposed a reward-based scheduling method for periodic tasks.
In this model each real-time task is divided into two parts—a
mandatory part and an optional part. A non-decreasing reward
function is associated with the optional part. The authors have
shown that an optimal schedule exists where the optional
service time of task is constant. For a very good survey of real-
time scheduling algorithm the reader may refer [12,21]. There
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–132
are some remarkable differences between real-time scheduling
problems and those of operations research. In operations
research scheduling, usually the objective is to find optimal
static schedule when some specific service characteristics of a
fixed system is given. Real-time task scheduling may also be
offline (static) but very often they are dynamic, online systems.
In the former case, the scheduling is done in advance of
operation and in the case of online scheduling tasks are
scheduled once they arrive in the system. Real-time task
scheduling can be clock driven, weighted round robin and most
importantly priority driven [12]. In clock driven systems,
scheduling decisions on a particular job are taken only at some
specific time. Based on basic round robin approach, in the
weighted round robin scheduling different weights are given to
different jobs instead of giving all the ready jobs equal weight
for processing. In priority-driven algorithms jobs are prioritized
on the basis of various parameters. Some widely studied and
used priority-driven real-time scheduling algorithms are rate
monotonic (RM), earliest deadline first (EDF), highest
criticality first (HCF), criticality deadline first (CDF), least
laxity first (LLF), first in first out (FIFO), last in first out (LIFO),
shortest execution time first (SETF), etc. [11,12].
Since in the early phase of real-time system design only an
approximate idea of the tasks and their characteristics are
available some sorts of uncertainty or impreciseness are
associated with these timing requirements. To cope with this
uncertainty in the timing constraints of tasks in real-time
systems several modeling techniques considering uncertainty
(viz. probability theory, fuzzy set theory, etc.) have been
proposed [14]. These techniques provide more realistic
timing analysis in comparison to simple crisp timing
constraints. Among them fuzzy mathematics edges past
probabilistic theory in so many ways as computations are
simpler here and expert help can be taken easily for task
modeling. Moreover, it is simpler and faster in computations
and provides more flexibility in modeling because without
any significant addition in complexity we can choose from a
wide variety of fuzzy membership types for a particular
timing parameter [10,13]. The scheduling of real-time tasks
having fuzzy constraints can be termed as fuzzy real-time
scheduling. There were reports [1,4,5,14–16] where fuzzy
approaches were introduced for various real-time scheduling
algorithms and different models for real-time systems were
proposed. Fuzzy due dates were considered first by Ishii et al.
[16] for a general scheduling problem. An attempt has been
made by Terrier and Chen [17] to apply fuzzy calculus in real-
time task scheduling. They claimed to have considered the
task execution time as fuzzy for the first time. Lee et al. [18]
proposed a model for fuzzy rule-based scheduler for
scheduling real-time tasks. To solve a deterministic type
job-shop scheduling problem, approximate reasoning
approach was introduced by Tursken et al. [6,7]. They have
considered a hierarchical scheduling model of five levels
using fuzzy rules to solve the problem. For the formulation of
multi-objective fuzzy scheduling problems Murata et al. [15]
considered the importance of individual jobs with OWA
(ordered weighted averaging) operator. Most excellent work
on fuzzy real-time scheduling was done by Litoiu et al. in
their proposed [1,2,4,5] pessimistic model. They have
introduced a cost function viz. satisfaction of schedulabilty,
used before by Ishii et al. [16], and evaluated the satisfaction
of each individual job having fuzzy deadlines and processing
times. Then they have formulated the problems as the
maximization of the minimum satisfaction.
This paper extends the model proposed by Litoiu and Tadei
[4] to triangular, trapezoidal and semi-elliptical membership
functions giving a wider choice to the designer. Mathematical
models for trapezoid and semi-elliptical cases has been
developed from the first principles and used in several test
cases using the Cheddar real-time simulator [20]. The effects of
the choice of different types of membership functions and their
fuzzy parameter are studied and simulations results are
reported. Litoiu’s model with triangular membership function
appears as the special case of our trapezoidal model, when the
width of the trapezoid is zero.
The rest of the paper is organized as follows. Section 2
introduces the terminology and formulation of the real-time
scheduling problem in the fuzzy setting. Section 3 gives
analysis and examples using triangular, trapezoidal and semi-
elliptical membership functions for deadlines and completion
times. Section 4 reports the results of simulation experiments
and finally conclusions are given in Section 5.
2. Formulation in the fuzzy setting
Our basic formulation is similar to Litoiu and Tadei [4]. We
are giving it here for ready reference. A real-time system may
be considered to have a general model as per following:
T = {Tiji = 1, 2, 3, . . ., n} be a set of n tasks such that:
(1) E
xecution time or processing time of task Ti is ei.(2) P
eriod of task Ti is Pi (if the tasks under consideration areperiodic).
(3) R
elative deadline of task Ti is di.(4) A
bsolute deadline of task Ti is Di.(5) R
elease time of task Ti is ri.(6) P
hasing of task Ti is Ii such that jth period of task Ti begins attime Iij = Ii + (j � 1)Pi and completes by the time dij =
di + Iij = di + Ii + ( j � 1)Pi, j = 1, 2, 3, . . .
(7) A t the jth invocation the completion time for task Ti is Cij.As we have already mentioned before in practical systems
the timing constraints viz. execution times, task deadlines,
release times, etc. of real-time tasks cannot be precisely
defined, hence gives scope for the fuzzification of the
scheduling problem. Fuzzification can be done for the real-
time task model using fuzzy constraints, fuzzy processing
time, fuzzy deadlines or a combination of the above three.
Fuzzy set expresses the degree of compatibility of the same
entity with the imprecise concept represented by that particular
fuzzy set.
Now if we consider the deadline di of task Ti as the
trapezoidal (or triangular) type fuzzy number such that [ai, bi] is
its 0-cut, then di ¼ ðai; a0i; b0i; biÞ (for triangular case, a0i ¼ b0i).
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–13 3
Hence the deadline of the task Tij (jth invocation of the ith task)
can be expressed as:
di j ¼ ðai þ Ii þ ð j� 1ÞPi; a0i þ Ii þ ð j� 1ÞPi; b
0i þ Ii
þ ð j� 1ÞPi; bi j þ Ii þ ð j� 1ÞPiÞ
¼ ðai j; a0i j; b
0i j; bi jÞ
Considering m as the membership function for the fuzzy
deadline dij and Cij as the crisp execution time, the following
cost function viz., the satisfaction of schedulability, Sd was
introduced [1,4,5,16] to see the compliance of the deadlines
over all the periods:
SdiðCi jÞ ¼
0 if Ci j < ai j
1�R Ci j
ai jmðdi jÞ dðdi jÞR bi j
ai jmðdi jÞ dðdi jÞ
if ai j � Ci j � bi j
1 if Ci j < bi j
8>>>><>>>>:
(1)
The quantityR Ci j
ai jmðdi jÞ dðdi jÞ=
R bi jai j
mðdi jÞ dðdi jÞ is actually the
measure of dissatisfaction, how far the task completion time is
missing the deadline. If we consider a general bell shaped
membership function with [ai, bi] as it’s 0-cut then, as shown in
Fig. 1, the denominator is the total area under the curve,
whereas the numerator is the shaded area.
The completion time Cij is deterministic as sum of
deterministic execution times and several algorithms were
proposed for their computation [8]. As fuzzy numbers are
continuous functions the existence of the integral is beyond doubt
and hence the satisfaction function is certainly continuous and
strictly decreasing. Therefore, denoting P as the hyperperiod of
the tasks (least common multiple of the task periods) the problem
of scheduling Ti tasks (with fuzzy deadlines dij and completion
time Cij at the jth invocation) may be summarized as:
maximize Sd ¼ mini; j
SdiðCi jÞ (2)
finding an optimal assignment of priorities, where i = 1, . . ., n
and j = 1, . . ., P/Pi as the schedulability should be examined
over P time units.
Similarly considering the processing times as fuzzy
trapezoidal numbers we can have the completion time also
trapezoidal because the completion time as the sum of
processing times will be a fuzzy number when processing
times are fuzzy. Then the jth invocation can be written as
Fig. 1. General fuzzy deadline.
Ci j ¼ ðei j; e0i j; f 0i j; f i jÞ having [eij, fij] as 0-cuts. Then to
measure schedulability over the whole task set and every
invocation, the satisfaction of schedulabilty, is defined below
for the task Ti for its invocation:
SCiðdi jÞ ¼
0 if di j < ei jR di j
ei jmðCi jÞ dðCi jÞR f i j
ei jmðCi jÞ dðCi jÞ
if ei j � di j � f i j
1 if di j > f i j
8>>>><>>>>:
(3)
The integral exists for obvious reasons and in the interval [eij,
f ij] the function SC is strictly increasing and continuous. There-
fore, the problem is summarized as:
maximize SC ¼ mini; j
SCiðdi jÞ (4)
finding an optimal assignment of priorities, where i = 1, . . ., n
and j = 1, . . ., P/Pi as the schedulability should be examined
over P time units. Considering both the deadlines and proces-
sing times as fuzzy trapezoidal numbers the scheduling pro-
blem for the task set, with characteristics mentioned in Section
1, the problem may be summarized as:
maximize S ¼ mini; j
maxCi j;di j
minðSCiðdi jÞ; SdiðCi jÞÞ (5)
finding an assignment of priorities, where i = 1, . . ., n and j = 1,
. . ., P/Pi as the schedulability should be examined over P time
units. Let us now consider, mini; j SdiðCi jÞ ¼ t.Then,
SdiðCi jÞ� t 8 i ¼ 1; . . . ; n and j ¼ 1; . . . ;P
Pi(6)
From the continuity of the satisfaction function Sd and it’s
inverse function, we can therefore write:
Ci j � Ii þ ð j� 1ÞPi þ d0iðtÞ;
i ¼ 1; . . . ; n and j ¼ 1; . . . ;P
Pi(7)
where the quantity d0iðtÞ is a crisp quantity that depends on the
minimum satisfaction, t, and is termed as the modified dead-
lines and the optimal priority assignment of the real-time tasks
are according to the increasing order of this quantity. Now our
interest is to find those values of t (0 � t � 1) for which
modified deadlines of two tasks become equal i.e. those tij that
satisfy:
fti jjd0iðtÞ ¼ d0jðtÞ; j ¼ 1; . . . ; n; i ¼ 1; . . . ; n; 0 � ti j � 1g(8)
Now since the modified deadline of different tasks changes at
these tij, so also the priorities of the tasks changes only at these
points. Hence we have to check the priorities of the tasks over
various intervals obtained by sequentially placing the quantities
tij in the increasing order. Litoiu and Tadei [5] proposed an
algorithm to find the best priority assignment as a result of the
maximization of Sd. In this algorithm successive search tech-
nique has been applied to identify the interval in which
P.K. Muhuri, K.K. Shukla / Applied4
satisfaction is maximum. In the present work, we demonstrate
our techniques of fuzzy scheduling based on earliest deadline
first (EDF) policy, where deadlines and execution times are
fuzzy numbers.
3. Analysis and examples for deadlines and completion
times
3.1. Satisfaction Sd, SC and intersection points tij for
triangular type fuzzy deadline
Litoiu and Tadei [4] has derived the expressions to find the
satisfactions for the case of triangular fuzzy deadlines di j ¼ðai j; a
0i jð¼ b0i jÞ; bi jÞ (Fig. 2).
The satisfaction function Sdi for the triangular type fuzzy
deadline can be given as:
SdiðCi jÞ ¼
1 if Ci j < ai j
1� ðCi j � ai jÞ2
ðbi j � ai jÞðb0i j � ai jÞif ai j � Ci j � b0i j
ðbi j � Ci jÞ2
ðbi j � ai jÞðbi j � b0i jÞif b0i j � Ci j � bi j
0 if Ci j > bi j
8>>>>>>>>><>>>>>>>>>:
(9)
They also provided the equations necessary to find the modified
deadline and the tij’s. But to remove few mistakes in Ref. [4]
that may have occurred during the printing we are giving the
corrected equations below. The modified deadlines of the task
Ti can then be expressed as:
d0i ¼ai þ
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffið1� tÞXi
pif t> Li
bi �ffiffiffiffiffiffitYi
pif t � Li
�(10)
where Li ¼ ðbi � b0iÞ=ðbi � aiÞ; Xi ¼ ðbi � aiÞðb0i � aiÞ; Yi ¼ðbi � aiÞðbi � b0iÞ. The expressions to find tij are given below:
K1 ¼�
ti jjti j ¼ðai � a jÞ2� ffiffiffiffiffiXi
p�
ffiffiffiffiffiX j
p �2
�for ti j > Li; ti j > L j
K2 ¼�
ti jjti j ¼ðbi � b jÞ2� ffiffiffiffiffiYi
p�
ffiffiffiffiffiY j
p �2
�for ti j � Li; ti j � L j
Fig. 2. Triangular fuzzy membership function.
K3 ¼�
ti jjti j
¼ 2XiYi�ðXi� Y jÞðZi j�XiÞ�2ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiZi jXiY jðXiþ Y j� Zi jÞ
pðXiþ Y jÞ2
�
for ti j>Li; ti j � Lj
K4 ¼�
ti jjti j
¼2X jYi�ðX j�YiÞðQij�X jÞ�2
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiQijX jYiðX jþYi�QijÞ
pðX jþYiÞ2
�
for ti j>Li; ti j � Lj
where Zij = (bj � ai)2 and Qij = (bi � aj)
2 and the quantities tijcan be found within the union set of K1, K2, K3 and K4 for which
(such that 0 � tij � 1) modified deadlines of two tasks are
equal.
After finding the interval, where the satisfaction is
maximum, and its associated task priority the schedulability
of tasks over that interval is checked. For that purpose the fuzzy
completion times of the tasks needs to be calculated, the
detailed algorithm is given in [1,4]. Then the satisfaction of the
schedulability is determined using the worst fuzzy completions
time Wi(Ci), where WiðCiÞ ¼Pi
j¼1 e j dCi=Pi e þ BLi ; BLi
being the time for which a high priority task is blocked by a
low priority one. Considering the worst case situation, when the
processor is also requested by all other tasks, to calculate Ci/Pi,
the latest extremity of Ci i.e. fi is taken. In doing this, the fuzzy
division is transformed into a ordinary arithmetic division.
Then using the worst fuzzy completion time the satisfaction
function SC is calculated, the minimum of which gives us the
satisfaction of the schedulability.
Example 1. We are considering a set of real-time tasks that
was used by Litoiu and Tadei [4] with some modifications in the
tasks characteristics.
T1 : e1 ¼ ð15; 20; 25Þ; P1 ¼ 100; d1 ¼ ð70; 85; 100Þ;T2 : e2 ¼ ð65; 70; 75Þ; P2 ¼ 170; d2 ¼ ð155; 160; 165Þ;T3 : e3 ¼ ð25; 30; 35Þ; P3 ¼ 170; d3 ¼ ð159; 161; 163Þ
Using the equations given above for tij’s we find two values
of t23 as 0.2222 and 0.8889, which satisfy 0 � tij � 1. But the
modified deadlines of tasks T2 and task T3 are equal only for
0.2222. The respective modified deadline is 161.6667. The
schedulability of the tasks has to be checked over the following
two satisfaction intervals: O1: [0, 0.2222] and O2: [0.2222, 1].
The task priority over the above two satisfaction intervals are
[T1, T3, T2] and [T1, T2, T3]. Upon calculation of the worst fuzzy
completion time it is seen that the respective completion times
are within the modified deadlines d01ð0Þ; d02ð0Þ; d03ð0Þ and
d01ð0:2222Þ; d02ð0:2222Þ; d03ð0:2222Þ. But they do not comply
with the modified deadlines d01ð1Þ; d02ð1Þ; d03ð1Þ. Therefore, the
satisfaction will be in the interval [0.2222, 1]. Now the
calculation of the satisfaction (SC) gives SC1¼ 1; SC2
¼ 1; SC3¼ 0:9988. The satisfaction of the schedulability is
Soft Computing 8 (2008) 1–13
j
Fig. 4. Trapezoidal fuzzy membership function.
Fig. 3. Depiction of task schedule.
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–13 5
therefore the minimum of them, which is 0.9988 and the tasks
are to be prioritized as [T1, T2, T3] (Fig. 3).
3.2. Satisfaction Sd, SC and intersection points tij for
trapezoidal type fuzzy deadline
A fuzzy trapezoidal membership function is specified by
four parameters {a, a0, b0, b} as given below:
trapezoidðx; a; a0; b0; bÞ ¼
0 if x< ax� a0
a0 � aif a � x � a0
1 if a0 � x � b0
b� x
b� b0if b0 � x � b
0 if x> b
8>>>>>>>><>>>>>>>>:
(11)
Let us now consider the task deadlines as trapezoidal fuzzy
numbers. Then as we noted in the Section 2, the deadline of the
jth invocation of the ith task can be expressed as:
di j ¼ ðai þ Ii þ ð j� 1ÞPi; a0i þ Ii þ ð j� 1ÞPi; b
0i þ Ii
þ ð j� 1ÞPi; bi þ Ii þ ð j� 1ÞPiÞ
¼ ðai j; a0i j; b
0i j; bi jÞ
Then, the satisfaction Sdi for the trapezoidal fuzzy deadline
can be expressed as (Fig. 4):
SdiðCi jÞ ¼
1 if Ci j < a
1� ðCi j � ai jÞ2
2Ai jða0i j � ai jÞif ai j � C � a0i j
1�ða0i j � ai jÞ þ 2ðCi j � a0i jÞ
2Ai jif a0i j � Ci j � b0i j
ðbi j � Ci jÞ2
2Ai jðbi j � b0i jÞif b0i j � Ci j � bi j
0 if Ci j > bi j
8>>>>>>>>>>>>><>>>>>>>>>>>>>:
(12)
where Ai j ¼ ð1=2Þða0i j � ai jÞ þ ðb0i j � a0i jÞ þ ð1=2Þðbi j � b0i jÞis the area of the trapezoid.
Now when the completion time Cij is a trapezoidal fuzzy
number instead:
Ci j ¼ ðei j; e0i j; f 0i j; f i jÞ
Then considering the deadline dij as the crisp, the
satisfaction SCi can be expressed as:
SCiðdi jÞ ¼
0 if di j < ei j
ðdi j � ei jÞ2
2Ai jðe0i j � ei jÞif ei j � di j � e0i j
1�ð f i j � f 0i jÞ þ 2ðCi j � e0i jÞ
2Ai jif e0i j � di j � f 0i j
1�ð f i j � di jÞ2
2Ai jð f i j � f 0i jÞif f 0i j � di j � f i
1 if di j > f i j
8>>>>>>>>>>>>>><>>>>>>>>>>>>>>:
(13)
Now from the expressions of Sdi , the modified deadlines, for the
task having deadlines as trapezoidal type fuzzy membership,
can be given as:
d0i ¼
ai þffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffið1� tÞXi
pif Li � t � 1
1
2ðai þ a0iÞ þ
ð1� tÞXi
ða0i � aiÞ
� �if Mi � t � Li
bi �ffiffiffiffiffiffiffiffi2tYi
pif 0 � t � Mi
8>><>>: (14)
where Xi ¼ ½ða0i � aiÞfðbi � aiÞ þ ðb0i � a0iÞg�; Yi ¼ ½ðbi � b0iÞfðbi � aiÞ þ ðb0i � a0iÞg�; Li ¼ ððb0i � a0iÞþðbi � a0iÞÞ=ððbi � aiÞþðb0i � a0iÞÞ and Mi ¼ ðbi � b0iÞ=ððbi � aiÞ þ ðb0i � a0iÞÞ
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–136
The intersection points tij, where the modified deadlines of
two tasks becomes equal, can be found from the union of the
sets:
K1 ¼�
ti jjti j ¼ 1� ðai � a jÞ2� ffiffiffiffiffiXi
p�
ffiffiffiffiffiX j
p �2
�
for Li � ti j � 1; M j � ti j � 1
K2 ¼�
ti jjti j ¼ 1�ða j � aiÞ þ ða0j � a0iÞ
ðXi=ða0i � aiÞÞ � ðX j=ða0j � aiÞÞ
�
for Mi � ti j � Li; M j � ti j � L j
K3 ¼�
ti jjti j ¼ðbi � b jÞ2
2
� ffiffiffiffiffiYi
p�
ffiffiffiffiffiY j
p �2
�
for 0 � ti j � Mi; 0 � ti j � M j
K4 ¼�
ti jjti j ¼ 1þð2X jða0j þ a j � 2aiÞ þ 4Xiða0j � a jÞÞ=ða0j � a jÞ�
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiX2
i � XiX jða0j þ a j � 2aiÞ=ða0j � a jÞq
2X2j=ða0j � a jÞ2
�
for Li � ti j � 1; M j � ti j � L j
K5 ¼�
ti jjti j ¼ 1þð2Xiða0i þ ai � 2a jÞ þ 4X jða0i � aiÞÞ=ða0i � aiÞ�
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiX2
j � XiX jða0i þ ai � 2a jÞ=ða0i � aiÞq
2X2i =ða0i � aiÞ2
�
for Mi � ti j � Li; L j � ti j � 1
K6 ¼�
ti jjti j ¼ð2Xiðb0i þ bi � 2b jÞ þ 4X jða0i � aiÞÞ=ða0i � aiÞ�
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi4X2
j þ 16XiX jðb0i þ bi � 2b jÞ=a0i � aiÞq
2X2i =ða0i � aiÞ2
�
for Mi � ti j � Li; 0 � ti j � M j
K7 ¼�
ti jjti j ¼ð2X jðb0j þ b j � 2biÞ þ 4Xiða0j � a jÞÞ=ða0j � a jÞ�
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi4X2
i þ 16XiX jðb0j þ b j � 2biÞ=a0j � a jÞq
2X2j=ða0j � a jÞ2
�
for 0 � ti j � Mi; M j � ti j � L j
K8 ¼�
ti jjti j ¼�Bi j �
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiB2
i j � 4A0i jEi j
q2A0i j
�
for 0 � ti j � Mi; L j � ti j � 1
K9 ¼�
ti jjti j ¼�Gi j �
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiG2
i j � 4Fi jHi j
q2Fi j
�for Li � ti j � 1; 0 � ti j � M j
where A0i j¼ðX j�2YiÞ2; Bi j¼½2ðX j � 2YiÞfðbi � a jÞ2þX jgþ4X jðbi � a jÞ2�; Ei j¼½ðbi � a jÞ2�X j�; Fi j¼ðXi � 2Y jÞ2; Gi j ¼½2ðXi � 2Y jÞfðb j � aiÞ2þXigþ4Xiðb j�aiÞ2�; Hi j¼½ðb j � aiÞ2�Xi�.
Example 2. Let us now modify the task set considered in
Example 1 to accommodate trapezoidal fuzziness in the dead-
line and processing time as mentioned below:
T1 : e1 ¼ ð15; 17:5; 22:5; 25Þ; P1 ¼ 100;
d1 ¼ ð70; 80; 90; 100Þ;T2 : e2 ¼ ð65; 67:5; 72:5; 75Þ; P2 ¼ 170;
d2 ¼ ð155; 157:5; 162:5; 165Þ;T3 : e3 ¼ ð25; 27:5; 32:5; 35Þ; P3 ¼ 170;
d3 ¼ ð159; 160; 162; 163Þ
We find t23 = 0.2778 that satisfies 0 � tij � 1 and at which
point the modified deadlines of tasks T2 and task T3 are equal.
The respective modified deadline is same as that we obtained
for triangular fuzzy deadline in Example 1, i.e. 161.6667. So,
the schedulability is to be studied over the following intervals:
O1 = [0, 0.2778] and O2 = [0.2778, 1]. The priorities of the
tasks over the above two satisfaction intervals are found as O1:
[T1, T3, T2] and O2: [T1, T2, T3], respectively. The respective
worst fuzzy completion time of the various tasks comply with
the modified deadlines d01ð0Þ; d02ð0Þ; d03ð0Þ and d01ð0:2778Þ;d02ð0:2778Þ; d03ð0:2778Þ. But they do not comply with the
modified deadlines d01ð1Þ; d02ð1Þ; d03ð1Þ, which means that the
satisfaction will be in the interval [0.2778, 1]. The satisfaction
(SC) has been found as SC1¼ 1; SC2
¼ 1; SC3¼ 0:9967. The
satisfaction of the schedulability is therefore 0.9967 and the
task priority should be as [T1, T2, T3].
3.3. Satisfaction Sd, SC and intersection points tij for semi-
elliptical type fuzzy deadline
A semi-elliptical type fuzzy membership function is
specified, if Cd is the x-coordinate of the centre of the ellipse
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–13 7
and 2rd is the major axis length by two parameters {Cd, rd} as
follows:
semi-ellipseðx; Cd; rdÞ
¼
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1� ðCd � xÞ2
r2d
s if Cd � rd � x � Cd þ rd
0 Otherwise
8>><>>: (15)
Now if we consider the deadline as the semi-elliptical fuzzy
number, di such that [Cd � rd, Cd + rd] is its 0-cut, then,
di ¼ ðCdi; rdiÞ. Hence the deadline of the task Tij can be
expressed as di j ¼ ðCdi j ; riÞ, where Cdi j ¼ ðIi þ ð j� 1ÞPi þCdiÞ Then the satisfaction function, Sdi , for the task Tij having
SCiðdi jÞ ¼
0 if di j <CCi j � rCi j
cos�1ðCCi j � di j=rCi jÞ � ðCCi j � di j=rCi jÞ½1� ðCCi j � di j=rCi jÞ2�1=2
pif CCi j � rCi j � di j � CCi j þ rCi j
1 if di j >CCi j þ rCi j
8>><>>: (20)
semi-elliptical type fuzzy deadline can be obtained from (Fig. 5):
SdiðCi jÞ ¼
1 if Ci j <Cdi j � rdi
1�
R Ci j
Cdi j�rdi½1� ððCdi j � xÞ=rdÞ2�
1=2dxR Cdi j
þrdi
Cdi j�rdi½1� ððCdi j � xÞ=rdÞ2�
1=2dx
if Cdi j � rdi � Ci j � CCi j þ rdi
0 if Ci j >Cdi j þ rdi
8>>>>><>>>>>:
(16)
On evaluation of the integral, we can express the satisfaction Sdi
as shown below:
SdiðCi jÞ ¼
1 if Ci j <Cdi j � rdi j
1�cos�1ððCdi j � Ci jÞ=rdi jÞ � ððCdi j � Ci jÞ=rdi jÞ½1� ððCdi j � Ci jÞ=rdi jÞ
2�1=2
pif Cdi j � rdi j � Ci j � Cdi j þ rdi j
0 if Ci j >Cdi j þ ri j
8>><>>:
(17)
Now from the expression of the Sdi the modified deadlines for
the task Tij, having semi-elliptical type fuzzy deadline, can be
Fig. 5. Semi-elliptical fuzzy membership function (length of the minor axis is
taken as 1).
expressed as:
d0i ¼ Cdi �rdiffiffiffi
2p
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1� 1
2f4� p2ð1� tÞ2g2
r(18)
The quantities tij can be found using the following equation:
ti j ¼ 1� 1
2p
ffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffiffi1�
�2
�Cdi � Cd j
rdi � rd j
�2
� 1
�2
vuut(19)
Similar to derivation of the expression for Sd we can derive
necessary expression for SC, when the completion time is given
by a semi-elliptical fuzzy number, denoted as Ci j ¼ ðCCi j ; rCi jÞand deadline dij is crisp, as given below:
Example 3. Let us now modify the task set considered in
Example 1 to accommodate semi-elliptical fuzziness in the
deadline and processing time as mentioned below:
T1 : e1 ¼ ð20; 5Þ; P1 ¼ 100; d1 ¼ ð85; 15Þ;T2 : e2 ¼ ð70; 5Þ; P2 ¼ 170; d2 ¼ ð160; 5Þ;T3 : e3 ¼ ð30; 5Þ; P3 ¼ 170; d3 ¼ ð161; 2Þ
Here, we find t23 = 0.292 that satisfies 0 � tij � 1 and at
which point the modified deadlines of tasks T2 and task T3 are
equal. The respective modified deadline is same as that we
obtained for triangular fuzzy deadline in Example 1, i.e.
161.6667. So, the schedulability is to be studied over the
following intervals: O1 = [0, 0.2918] and O2 = [0.2918, 1]. The
priorities of the tasks over the above two satisfaction intervals
are found as O1: [T1, T3, T2], and O2: [T1, T2, T3], respectively.
The respective worst fuzzy completion time of the various tasks
comply with the modified deadlines d01ð0Þ; d02ð0Þ; d03ð0Þ and
d01ð0:2918Þ; d02ð0:2918Þ; d03ð0:2918Þ. But they do not comply
with the modified deadlines d01ð1Þ; d02ð1Þ; d03ð1Þ, which means
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–138
that the satisfaction will be in the interval [0.2918, 1]. The
satisfaction (SC) has been found as SC1¼ 1; SC2
¼ 1;SC1¼ 0:9933. The satisfaction of the schedulability is there-
fore 0.9933 and the task priority should be as [T1, T2, T3].
Fig. 7. Plot of modified deadline vs. satisfaction for Experiment 1(ii).
Fig. 6. Plot of modified deadline vs. satisfaction for Experiment 1(i).
4. Simulation results
To assess the relative performance of fuzzy scheduling using
different membership functions to model fuzzy uncertainty in
execution times and deadlines we conducted several simulation
experiments using our own C software for computing the
modified deadlines and then using it to run Cheddar real-time
simulator [20]. We have done a number of simulation
experiments by changing the fuzziness [9] of the deadlines
and got some interesting results. Measure of fuzziness (F) is
used to represent the degree of fuzziness of a fuzzy set
A ¼ fx;1AðxÞg. We use the following measure of fuzziness
given by Yager [22]:
(21)
where , SuppðAÞ is the sup-
port of A, is the complement of A and [a, b] is the 0-cut of the
membership function. We have taken here p = 2, L2 norm to
measure the set difference. The following experiments were
conducted.
4.1. Experiment 1
(i) We took a three task system T = {T1, T2, T3} with the
Tabl
Resu
Sati
poin
t12 =
t2
following characteristics:
T1 : e1 ¼ ð30; 40; 50Þ; P1 ¼ 170;
d1 ¼ ð154; 160; 166Þ; F1 ¼ 0:83;
T2 : e2 ¼ ð65; 70; 75; Þ; P2 ¼ 170;
d2 ¼ ð155; 160; 165Þ; F2 ¼ 0:82;
T3 : e3 ¼ ð25; 30; 35Þ; P3 ¼ 170;
d3 ¼ ð159; 161; 163Þ; F3 ¼ 0:71
The results we got are summarized in the following Table 1
and Fig. 6 shows the variation of modified deadline against
satisfaction.
(ii) A
s an example let us consider the case where the fuzzinessin the deadline of the task T3 is increased from 2 to 6.5 such
e 1
lts for Experiment 1(i)
sfaction crossover
ts (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval of h
satisfaction
0.5000, t13 = 0.2813,
3 = 0.2222
[0.0000, 0.2222] [T3, T2, T1] [0.5000, 1.0
[0.2222, 0.2813] [T2, T3, T1]
[0.2813, 0.5000] [T2, T1, T3]
[0.5000, 1.0000] [T1, T2, T3]
that the task characteristics change as per following:
T3 : e3 ¼ ð25; 30; 35Þ; P3 ¼ 170;
d3 ¼ ð154:5; 161; 167:5Þ; F3 ¼ 0:84
The result we obtained is mentioned in the following Fig. 7
and Table 2. Figs. 6 and 7 shows the variation of modified
deadline against satisfaction for Experiment 1(i) and (ii),
respectively. These shows that change of the fuzziness only
in a single task effects the whole task set. Although in the
previous case we saw that every task is likely to loose priority
on slightest change in satisfaction (hence the completion
time), whereas in the present case the priority of the task T1 is
always higher than that of task T3. Another observation from
the above experiment that for t > Li, i.e. when the completion
time of a tasks is within the peak of the triangular deadlines
(i.e. the point a0i) the normal tendency of the tasks is to have
ighest Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
000] T1: 1.0000, T2: 1.0000,
T3: 0.9988
0.9988 T1: 1, T2: 2, T3: 3
Tabl
Resu
Satis
poin
t12 =
Table 2
Results for Experiment 1(ii)
Satisfaction crossover
points (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval of highest
satisfaction
Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
t12 = 0.5000, t23 = 0.9339 [0.0000, 0.5000] [T2, T1, T3] [0.9339, 1.0000] T1: 1.0000, T2: 1.0000,
T3: 0.9622
0.9622 T1: 1, T2: 3, T3: 2
[0.5000, 0.9339] [T1, T2, T3]
[0.9339, 1.0000] [T1, T3, T2]
Fig. 8. Plot of modified deadline vs. satisfaction for Experiment 2(i).
Fig. 9. Plot of modified deadline vs. satisfaction for Experiment 2(ii).
Tabl
Resu
Satis
poin
t12 =
t2
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–13 9
priority according to earliest ai and when t � Li, i.e. if the
completion time of the tasks is beyond the point a0i then that
task having earlier bi is of higher priority.
4.2. Experiment 2
(i) Here we took a three task system T = {T1, T2, T3} with
trapezoidal fuzzy deadlines as noted in the following
characteristics:
T1 : e1 ¼ ð30; 35; 45; 50Þ; P1 ¼ 100;
d1 ¼ ð154; 157; 163; 166Þ; F1 ¼ 0:76;
T2 : e2 ¼ ð65; 67:5; 75; Þ; P2 ¼ 170;
d2 ¼ ð155; 157:5; 162:5Þ; F2 ¼ 0:74;
T3 : e3 ¼ ð25; 27:5; 32:5; 35Þ; P3 ¼ 170;
d3 ¼ ð159; 160; 162; 163Þ; F3 ¼ 0:59
e 4
lts for Experiment 2(ii)
faction crossover
ts (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval of hi
satisfaction
0.5000, t23 = 0.9259 [0.0000, 0.5000] [T2, T1, T3] [0.9259, 1.00
[0.5000, 0.9259] [T1, T2, T3]
[0.9259, 1.0000] [T1, T3, T2]
e 3
lts for Experiment 2(i)
faction crossover
ts (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval of h
satisfaction
0.5000, t13 = 0.3333,
3 = 0.2778
[0.0000, 0.2778] [T3, T2, T1] [0.5000, 1.0
[0.2778, 0.3333] [T2, T3, T1]
[0.3333, 0.5000] [T2, T1, T3]
[0.5000, 1.0000] [T1, T2, T3]
The results are summarized in the following Table 3 and
Fig. 8 shows the variation of the modified deadline against
satisfaction.
(ii) L
ike triangular cases of Experiment 1 here also we have donea number of simulations experiments changing the fuzziness
in the deadline of the tasks and got some interesting results.
As an example let us consider the case where the fuzziness in
the deadline of the task T3 is increased so that the task
characteristics changes as per following:
T3 : e3 ¼ ð25; 27:5; 32:5; 35Þ; P3 ¼ 170;
d3 ¼ ð154:5; 160; 162; 167:5Þ; F1 ¼ 0:82
The results we got are summarized in the following Table 4
and Fig. 9.
Here the observation is almost same as of Experiment
1(ii), where the crossover of priority in between tasks T1
ghest Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
00] T1: 1.0000, T2: 1.0000,
T3: 0.9496
0.9496 T1: 1, T2: 3, T3: 2
ighest Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
000] T1: 1.0000, T2: 1.0000,
T3: 0.9967
0.9967 T1: 1, T2: 2, T3: 3
Fig. 10. Plot of modified deadline/deadline vs. satisfaction/membership func-
tion for Experiment 3(i).Fig. 11. Plot of modified deadline/deadline vs. satisfaction/membership func-
tion for Experiment 3(ii).
Tabl
Resu
Sati
poin
t12 =
t2
Tabl
Resu
Sati
poin
t12 =
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–1310
and T3 is also absent, while that in between the tasks T2 and
T3 is happening at a lower satisfaction point.
4.3. Experiment 3
(i) Here we took a three task system T = {T1, T2, T3} with
semi-elliptical fuzzy deadlines as noted in the following
characteristics:
T1 : e1 ¼ ð40; 10Þ; P1 ¼ 170; d1 ¼ ð160; 6Þ;F1 ¼ 0:87;
T2 : e2 ¼ ð70; 5Þ; P2 ¼ 170; d2 ¼ ð160; 5Þ;F2 ¼ 0:86;
T3 : e3 ¼ ð30; 5Þ; P3 ¼ 170;
d3 ¼ ð161; 2Þ; F3 ¼ 0:78
The results we got are summarized in the following Table 5.
Fig. 10 shows the variation of modified deadline/deadline
against satisfaction/membership function.
(ii) F
or the semi-elliptical case also we considered variations inthe fuzziness of the deadlines, which resulted in a number
of simulation experiments with some interesting outcome.
e 5
lts for Experiment 3(i)
sfaction crossover
ts (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval of h
satisfaction
0.5000, t13 = 0.3425,
3 = 0.2918
[0.0000, 0.2918] [T3, T2, T1] [0.50000, 1.
[0.2918, 0.3425] [T2, T3, T1]
[0.3425, 0.5000] [T2, T1, T3]
[0.5000, 1.0000] [T1, T2, T3]
e 6
lts for Experiment 3(ii)
sfaction crossover
ts (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval of hi
satisfaction
0.5000, t23 = 0.8904 [0.0000, 0.5000] [T2, T1, T3] [0.8904, 1.00
[0.5000, 0.8904] [T1, T2, T3]
[0.8904, 1.0000] [T1, T3, T2]
For example, let us consider the case where the fuzziness in
the semi-elliptical deadline of the task T3 is increased so
that the task characteristics changes as per following:
T3 : e3 ¼ ð30; 5Þ; P3 ¼ 170; d3 ¼ ð161; 6:5Þ;F3 ¼ 0:88
The results we got are summarized in the following Table 6
and Fig. 11 shows variation of modified deadline/deadline
against satisfaction/membership function.
Here also the crossover of priority in between tasks T1
and T3 is absent, similar to the result of Experiments 1(ii)
and 2(ii), while that in between the tasks T2 and T3 is
happening at a much lower satisfaction point.
From the results of the Experiments 1–3 we observed
that when the completion time of a task is in between the
starting time and the peak of the fuzzy deadline then the
normal tendency of the tasks is to assume priority according
to earliest left extremity of the fuzzy deadline and when the
completion time of the tasks is beyond the peak point then
the task having earlier right extremity of the fuzzy
deadlines is of higher priority. Few simulation experiments
with tasks having fuzzy deadline having same peak points
ighest Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
0000] T1: 1.0000, T2: 1.0000,
T3: 0.9933
0.9933 T1: 1, T2: 2, T3: 3
ghest Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
00] T1: 1.0000, T2: 1.0000,
T3: 0.9171
0.9171 T1: 1, T2: 3, T3: 2
Table 7
Results for Experiment 4(i)
Satisfaction crossover
points (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval of highest
satisfaction
Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
t12 = 0.5000, t13 = 0.5000,
t23 = 0.5000
[0.0000, 0.5000] [T2, T1, T3] [0.5000, 1.0000] T1: 1.0000, T2: 0.9688,
T3: 1.0000
0.9688 T1: 2, T2: 3, T3: 1
[0.5000, 1.0000] [T3, T1, T2]
Fig. 12. Plot of modified deadline vs. satisfaction for Experiment 4(i). Fig. 13. Plot of modified deadline vs. satisfaction for Experiment 4(ii).
Tabl
Resu
Satis
poin
t12 =
t2
Tabl
Resu
Satis
poin
–
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–13 11
but different fuzziness resulted towards some interesting
findings. To demonstrate this we have conducted several
experiments, one example of which is give below.
4.4. Experiment 4
(i) Let us consider a three tasks system having following
e
t
3
e
t
characteristics:
T1 : e1 ¼ ð30; 40; 50Þ; P1 ¼ 170;
d1 ¼ ð150; 160; 170Þ; F1 ¼ 0:87;
T2 : e2 ¼ ð65; 70; 75Þ; P2 ¼ 170;
d2 ¼ ð155; 160; 165Þ; F2 ¼ 0:82;
T3 : e3 ¼ ð25; 30; 35Þ; P3 ¼ 170;
d3 ¼ ð145; 160; 175Þ; F3 ¼ 0:90
The results are summarized in Table 7 and Fig. 12.
8
lts for Experiment 4(ii)
faction crossover
s (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval
satisfac
0.6800, t13 = 0.4050,
= 0.1800
[0.0000, 0.1800] [T2, T1, T3] [0.6800
[0.1800, 0.4050] [T2, T3, T1]
[0.4050, 0.6800] [T3, T2, T1]
[0.6800, 1.0000] [T3, T1, T2]
9
lts for Experiment 4(iii)
faction crossover
s (tij)
Satisfaction
intervals
Tasks priority within
the intervals
Interval of
satisfactio
[0.0000, 1.0000] [T3, T1, T2] [0.0000, 1
(ii) N
of hi
tion
, 1.00
high
n
.0000
ow let us modify the above task set by introducing
some changes in the fuzziness of the deadlines of the
tasks T1 and T3 so that the tasks characteristics becomes
as:
T1 : e1 ¼ ð30; 40; 50Þ; P1 ¼ 170;
d1 ¼ ð151; 161; 171Þ; F1 ¼ 0:87;
T2 : e2 ¼ ð65; 70; 75Þ; P2 ¼ 170;
d2 ¼ ð155; 160; 165Þ; F2 ¼ 0:82;
T3 : e3 ¼ ð25; 30; 35Þ; P3 ¼ 170;
d3 ¼ ð144; 159; 174Þ; F3 ¼ 0:90
The corresponding results are as mentioned in Table 8 and
Fig. 13.
(iii) L
et us now modify the above task set by introducingasymmetric fuzziness in the deadlines of the tasks T1 and
ghest Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
00] T1: 1.0000, T2: 1.0000,
T3: 0.9688
0.9688 T1: 2, T2: 3, T3: 1
est Satisfaction of tasks Satisfaction of
schedulability
Optimal task
priority
] T1: 1.0000, T2: 0.9688,
T3: 1.0000
0.9688 T1: 2, T2: 3, T3: 1
Fig. 14. Plot of modified deadline vs. satisfaction for Experiment 4(iii).
Fig. 15. Diagram to show the changes in the satisfaction of schedulability for
various types of fuzzy deadline.
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–1312
T3 so that the tasks characteristics changes as mentioned
below:
T1 : e1 ¼ ð30; 40; 50Þ; P1 ¼ 170;
d1 ¼ ð150; 160; 170Þ; F1 ¼ 0:87;
T2 : e2 ¼ ð65; 70; 75Þ; P2 ¼ 170;
d2 ¼ ð155; 160; 175Þ; F2 ¼ 0:87;
T3 : e3 ¼ ð25; 30; 35Þ; P3 ¼ 170;
d3 ¼ ð145; 160; 165Þ; F3 ¼ 0:87
The corresponding results are as mentioned in Table 9 and
Fig. 14.
From the above results it is observed that when the deadlines
of the tasks are similar, they are assigned priority according to
earliest ai (or earliest bi, depending on the value of worst case
completion time). Therefore, the priorities can be controlled by
adjusting the fuzziness of the deadline. Thus, when different
tasks of a particular real-time tasks set has different
importance, but almost same deadline then to assure the most
important task having highest priority, even when there are
some uncertainty associated in the deadlines, we may
introduce carefully chosen fuzziness in the deadlines of the
tasks. This feature of the fuzzy real-time scheduling with EDF
policy outperforms the other scheduling policies that considers
task importance or criticality e.g. HCF (highest criticality
first), CDF (criticality deadline first), etc. as it considers both
the uncertainty in task deadline and also the importance of the
tasks.
5. Conclusion
While introducing different fuzzy membership functions to
model the uncertainty in the deadline/completion time of the
real-time tasks, contrary to the conclusive remarks of Litoiu and
Tadei [4] that small changes in the fuzzy numbers do not affect
the priority assignment, we observed that if the completion time
varies then the optimal tasks schedules changes at different
points for various membership functions of the deadlines. This
has been observed as we find different satisfaction crossover
points of modified deadlines (hence tasks priority as we have
followed EDF scheduling all over our experiment) of the tasks
for different membership functions of the tasks deadlines. The
satisfaction of the schedulability for the task set is also different
when we consider different membership functions for the task
deadline and completion time. This is because of the fact that
for the same left extremity of the deadline (ai, in the case of
triangular fuzzy deadline) the areas covered from the task
completion time are different for different membership
functions. This is shown in Fig. 15. Here the area A is smaller
than B and B is smaller than C, which explains why we got
higher satisfaction for triangular case and lower satisfaction for
semi-elliptical case and in between for the trapezoidal case. As
we have considered the worst case scenario naturally the
processor may have maximum slack time. These slacks may be
utilized to process real-time tasks other than periodic and or
non-real-time tasks. This will increase the systems utilization
and hence result in cost reduction. Our future work will focus
on the allocation of these slack times to the non-periodic real-
time or non-real-time tasks. Specifically we will try to find
some relation in between the total fuzziness introduced in the
timing constraints of the real-time periodic tasks and the total
slack time of the system. Thus, we see that by formulating the
real-time scheduling in the fuzzy setting the designer gets a lot
of flexibility in making the model correspond closely to the real
situation. Although we have discussed three membership
functions in the paper, the results can be extended to other
membership functions suitable to the problem at hand.
Asymmetry in the membership functions captures the
importance of various tasks and the priorities can be modified
naturally based on the importance of the tasks.
References
[1] M. Litoiu, R. Tadei, Fuzzy scheduling with application to real-time
systems, Fuzzy Set Syst. 121 (2001) 523–535.
[2] M. Litoiu, T.C. Ionescu, J. Labarta, Dynamic task scheduling in distributed
real-time systems using fuzzy rules, Microprocess. Microsyst. 21 (1998)
299–311.
[3] H. Aydin, R. Melhem, D. Mosse, P. Mejia-Alvarez, Optimal reward-based
scheduling for periodic real-time tasks, IEEE Trans. Comput. 50 (2)
(2001) 111–129.
[4] M. Litoiu, R. Tadei, Real-time task scheduling with fuzzy deadlines and
processing times, Fuzzy Set Syst. 117 (2001) 35–45.
[5] M. Litoiu, R. Tadei, Real-time task scheduling allowing fuzzy due dates,
Eur. J. Oper. Res. 100 (1997) 475–481.
[6] I.B. Tursken, Approximate reasoning for production planning, Fuzzy Set
Syst. 26 (1998) 1–15.
P.K. Muhuri, K.K. Shukla / Applied Soft Computing 8 (2008) 1–13 13
[7] I.B. Tursken, D. Ulguary, Q. Wang, Hierarchical scheduling based on
approximate reasoning, a comparison with ISIS, Fuzzy Set Syst. 46 (1992)
349–371.
[8] C.L. Liu, J.V. Layland, Scheduling algorithms for multiprogramming in
hard real-time systems, J. ACM 20 (1973) 46–61.
[9] H.J. Zimmermann, Fuzzy Set Theory and its Applications, Allied
Publishers Limited, 1996.
[10] G.J. Klir, U.St. Clair, B Yuan, Fuzzy Set Theory—Foundations And
Applications, Prentice-Hall International, 1997, pp. 169–213.
[11] C.M. Krishna, K.G. Shin, Real-Time Systems, McGraw-Hill, 1997, pp.
40–137.
[12] J.W.S. Liu, Real-Time Systems, Pearson Education Asia, 2001, pp. 115–
182.
[13] W. Slany, Scheduling as a fuzzy multiple criteria optimization problem,
Fuzzy Set Syst. 78 (1996) 192–222.
[14] A.P. Cucala, J. Villar, Schedulability Analysis of Real-Time Systems
Under Uncertainty: Fuzzy Approach, IPMU, Annecy, France, 2002.
[15] T. Murata, H. Ishibuchi, M. Gen, Multi-objective fuzzy scheduling with
the OWA operator for handling different scheduling criteria and different
job importance, in: Proceedings of the IEEE International Fuzzy Systems
Conference, vol. II, 1999, pp. 773–778.
[16] H. Ishii, M. Tada, T. Masuda, Two scheduling problems with fuzzy due
dates, Fuzzy Set Syst. 46 (1992) 339–347.
[17] F. Terrier, Z. Chen, Fuzzy calculus applied to real-time scheduling, Proc.
FUZZ-IEEE (1994) 1905–1910.
[18] J. Lee, A. Tiao, J. Yen, A fuzzy rule-based approach to real-time
scheduling, Proc. FUZZ-IEEE (1994) 1394–1399.
[19] L. Sha, Generalized rate-monotonic scheduling theory: a framework for
developing real-time systems, Proc. IEEE 82 (1) (1994) 68–82.
[20] http://www.univ-brest.fr/�singhoff/cheddar.
[21] L. Sha, et al., Real-time scheduling theory: a historical perspective, Real-
Time Syst. 28 (2004) 101–155.
[22] R.R. Yager, On the measure of fuzziness and negation. Part I: Memeber-
ship in the unit interval, Int. J. Gen. Syst. 5 (1979) 221–229.