13
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 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, 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 www.elsevier.com/locate/asoc Applied Soft Computing 8 (2008) 1–13 * 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

Real-time task scheduling with fuzzy uncertainty in processing times and deadlines

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 are

periodic).

(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 at

time 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 fuzziness

in 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 done

a 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 in

the 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 introducing

asymmetric 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.