Content uploaded by Pranab K. Muhuri

Author content

All content in this area was uploaded by Pranab K. Muhuri on Feb 05, 2018

Content may be subject to copyright.

Real-time scheduling of periodic tasks with processing times and deadlines as

parametric fuzzy numbers

Pranab K. Muhuri

a,

*, K.K. Shukla

b

a

Department of Computer Science and Engineering, University of Science and Technology Chittagong (USTC), Foy’s Lake, Chittagong-4202, Bangladesh

b

Department of Computer Engineering, Institute of Technology, Banaras Hindu University, Varanasi-221005, UP, India

1. Introduction

Real-time systems are those computing systems for which a

timely response to the external stimuli within a speciﬁed time

frame is a must [1]. Examples of real-time systems occur in

Telecommunication Systems, Defense Systems, Aircraft Flight

Control systems, Air Trafﬁc Control, Space Stations, Nuclear Power

Plants etc. Primary issues in Real-Time Systems are Scheduling,

Resource Allocation and Communication between components

and subsystems etc. Computing applications of real-time systems

i.e. time critical systems, require satisfying explicit timing

constraints of the tasks and hence these timing constraints play

the most important role for the purposeful and safe operation of

real-time systems. These timing constraints may be hard or soft.

Therefore, real-time systems can be classiﬁed into hard real-time

systems and soft real-time systems. Computing systems with

hard timing constraints are known as hard real-time systems,

whereas those with soft timing constraints are known as soft real-

time systems. Three main measures that count the merits of real-

time systems are: predictably very rapid response to urgent

events, high degree of schedulability (i.e. surety of feasible

schedule) and stability during transient overload [2].Thegoalof

scheduling real-time tasks in a time critical system is to devise a

feasible schedule, subject to a given set of tasks and task

characteristics, timing constraints, resource constraints, prece-

dence constraints etc. Therefore, task scheduling plays a vital role

in real-time systems. Task scheduling in real-time systems can be

clock driven, weighted round robin and most importantly

priority-driven [4]. In clock driven systems, scheduling decisions

on a particular job are taken only at some speciﬁc time. Based on

basic round robin approach, in the weighted round robin

scheduling different weights are given to different tasks instead

of giving all the ready tasks equal weight for processing. In

priority-driven scheduling tasks are prioritized on the basis of

various parameters. Based on these approaches, numerous

scheduling algorithms were proposed, which aim to ensure that

tasks comply with their deadlines [1,3–5]. Few 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. [1–6].

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, whereas 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

Applied Soft Computing 9 (2009) 936–946

ARTICLE INFO

Article history:

Received 14 May 2007

Received in revised form 29 October 2008

Accepted 15 November 2008

Available online 25 November 2008

Keywords:

Fuzzy deadlines

Fuzzy processing times

Parametric representation

Real-time systems

Task scheduling

ABSTRACT

Task scheduling is very important in real-time systems as it accomplishes the crucial goal of devising a

feasible schedule of the tasks. However, the uncertainty associated with the timing constrains of the real-

time tasks makes the scheduling problem difﬁcult to formulate. This motiva tes the use of fuzzy numbers

to model task deadlines and completion times. In this paper a method for intuitively deﬁning smooth

membership functions (MFs) for deadlines and execution times has been proposed using mixed cubic-

exponential Hermite interpolation parametric curves. The effect of changes in parameterized MFs on the

task schedulability and task priorities are also reported. A new technique is proposed based on the

concept of dynamic slack calculation to make the existing model more practical and realistic. Examples

are given to demonstrate the more satisfactory performance of the new technique.

ß2008 Elsevier B.V. All rights reserved.

* Corresponding author.

E-mail addresses: pranabmuhuri@gmail.com (P.K. Muhuri),

kkshukla.cse@itbhu.ac.in (K.K. Shukla).

Contents lists available at ScienceDirect

Applied Soft Computing

journal homepage: www.elsevier.com/locate/asoc

1568-4946/$ – see front matter ß2008 Elsevier B.V. All rights reserved.

doi:10.1016/j.asoc.2008.11.004

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 whereas aperiodic tasks are not periodic nor carry

any bound on invocation rate [1]. Only an approximate idea of the

real-time tasks and their characteristics are available in the early

phase of real-time system design. As a result, uncertainty or

impreciseness is associated with the timing requirements of real-

time tasks. To address this uncertainty in the timing constraints of

tasks in Real-Time Systems several modeling techniques con-

sidering uncertainty (viz. probability theory, fuzzy set theory etc.)

have been proposed [7]. 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 faster in

computations and provides more ﬂexibility in modeling. Because

without any signiﬁcant addition in complexity we can choose from

a wide variety of fuzzy membership types for a particular timing

parameter [8–10].

The scheduling of real-time tasks having fuzzy constraints

can be termed as fuzzy real-time scheduling. In [7,11–15] fuzzy

approaches were introduced for various real-time scheduling

algorithms and different models for real-time systems were

proposed. Fuzzy due dates were considered ﬁrst by Ishii et al.

[15] for a general scheduling problem. An attempt has been

made by Terrier and Chen [16] to apply fuzzy calculus in real-

time task scheduling. They claimed to have considered the task

execution time as fuzzy for the ﬁrst time. In [17] Lee et al.

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 Turksen et al. [18,19].Theyhaveconsidereda

hierarchical scheduling model of ﬁve levels using fuzzy rules to

solve the problem. For the formulation of multi-objective fuzzy

scheduling problems, Murata et al. [14] considered the

importance of individual tasks with OWA (ordered weighted

averaging) operator. Most excellent work on fuzzy real-time

scheduling was done by Litoiu et al. [11–13,20] in their proposed

pessimistic model. They have introduced a cost function viz.

satisfaction of schedulability, used before by Ishii et al. [15],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.

Muhuri and Shukla [24] showed that if the completion time

varies then the optimal tasks schedule changes at different

points for different membership functions of the fuzzy task

deadlines. They also showed that asymmetry in the membership

functions captures the importance of various tasks and the

priorities can be modiﬁed naturally based on the importance of

the tasks.

This paper extends the model proposed by Litoiu and Tadei [12]

for general fuzzy numbers in parametric representation. This gives

a wider choice to the designer. Mathematical models for this are

developed from the ﬁrst principles and used in several test cases

using the Cheddar Real-time Simulator [21]. 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

a special case of our parametric model. Again, the technique

followed by Litoiu and Tadei [12] to calculate the minimum

satisfaction is too much pessimistic. To overcome this we propose

to utilize the dynamic slack calculation technique [22] for the ﬁrst

time in fuzzy real-time scheduling. A real-life example is

considered and discussed in detail to demonstrate the applicability

of the new technique. The rest of the paper is organized as follows.

Section 2introduces the terminology and formulation of the fuzzy

real-time scheduling problem. Section 3gives mathematical

foundations of parametric membership functions including

detailed analysis of deadlines and completion time as parametric

fuzzy numbers. The Fuzzy RTS model with parametric MFs is

reported in Section 4. Finally conclusions are given in Section 5.

2. Fuzzy Real-Time Scheduling

In Real-Time Scheduling (RTS) using Fuzzy Membership

Functions (MFs) to represent deadline and execution times, there

is a need to specify the membership conveniently by the schedule

designer. In the past, simple MFs like Triangular, Trapezoidal have

been used. Although these MFs are simple to understand and

analyze, yet, they contain discontinuities and restrict the designer

in specifying task characteristics. In this paper a method for

intuitively deﬁning smooth MFs for deadlines and execution times

has been proposed using mixed cubic-exponential Hermite

interpolation parametric curves. This method is very versatile

and can model all kind of symmetric and asymmetric MFs, where

Triangular and Trapezoidal MFs appear as special cases. The

usefulness of the method has been demonstrated using simple

numerical examples. The effect of changes in parameterized MFs

on the Satisfaction of Schedulability and task priorities has also

been reported. 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 in parametric form.

A real-time system may be considered to have a general model

as per following:

T¼fT

i

ji¼1;2;3;...;ng

be a set of ntasks such that

(1)

Execution time or processing time of task T

i

is e

i

(2)

Period of task T

i

is P

i

(if the tasks under consideration are

periodic)

(3)

Relative deadline of task T

i

is d

i

(4)

Absolute deadline of task T

i

is D

i

(5)

Release time of task T

i

is r

i

(here we have considered set of tasks

with r

i

as zero)

(6)

Phasing of task T

i

is I

i

, i.e., period of the j-th invocation of task T

i

begins at time I

ij

=I

i

+(j1)P

i

and completes by d

ij

=d

i

+I

ij

=-

d

i

+I

i

+(j1)P

i

,j=1,2,...

(7)

At the j-th invocation, the completion time for task T

i

is C

ij

In practical systems, the timing constraints of the real-time

tasks viz. execution times, task deadlines etc. cannot be precisely

deﬁned. This gives scope for the fuzziﬁcation of the real-time

scheduling problem. Fuzziﬁcation 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. Therefore we

consider the deadline d

i

and the completion time C

i

of the task T

i

as

fuzzy number and our interest here is on the parametric form of the

fuzzy numbers.

3. Deadline and completion time as parametric fuzzy numbers

The detailed mathematical foundation of the parametric

representation of the fuzzy number using monotonic interpola-

tions has been given in [23]. Here we are providing the basic

notations for ready reference.

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

937

Continuous fuzzy number or intervals (say, u) can be deﬁned as

any pair (u

,u

+

), where

(1)

(u

,u

+

) are functions given by u

: [0, 1]!R

(2)

u

:a!u

a

2Ris a function which is bounded and mono-

tonically increasing (non-decreasing)

8a

2[0, 1]

(3)

u

þ

:a!u

þ

a

2Ris a function which is bounded and mono-

tonically decreasing (non-increasing)

8a

2[0, 1]

(4)

u

a

u

þ

a

8a2½0;1

In the case of fuzzy intervals, u

1

<u

þ

1

and for fuzzy numbers,

u

1

¼u

þ

1

. The

a

-cut of the fuzzy number ucan be expressed as

u

a

¼½u

a

;u

þ

a

. Conveniently u

and u

+

can be referred as the left and

right branches of the fuzzy number u. The following Fig. 1 shows

the

a

-cut representation of a general fuzzy interval.

If uand vare two fuzzy numbers such that u=(u

,u

+

) and

v¼ðv

;v

þ

Þ, then the addition and subtraction operations among

them in terms of

a

-cuts for

a

2[0, 1] can be given by:

I.

Addition:

ðuþvÞ

a

¼ðu

a

þv

a

;u

þ

a

þv

þ

a

Þ(1)

II.

Subtraction:

ðuvÞ

a

¼ðu

a

v

a

;u

þ

a

v

þ

a

Þ(2)

The use of monotonic splines to approximate fuzzy numbers

was studied and three interpolation techniques, viz. cubic

interpolation, rational cubic interpolation and mixed cubic-

exponential Hermite interpolation were considered. We are giving

here the formulation of the mixed cubic-exponential Hermite

interpolation. The interest here is mainly ﬁnding the monotonic

approximations of u

and u

+

with the interpolation of their values

through the decomposition of the interval [0,1] into nsub-intervals

such that 0 =

a

0

<

a

1

<<

a

i1

<

a

i

<<

a

n

= 1. Now if within

a sub-interval [

a

i1

,

a

i

] the values of u

ða

i1

Þ¼u

i1

and u

ða

i

Þ¼

u

i

and their ﬁrst derivates u

0

a

ða

i1

Þ¼u

0

i1

and u

0

ða

i

Þ¼u

0

i

are

known, then, mixed cubic-exponential Hermite interpolation

technique ﬁnds a suitable monotonic function for the interpolation

of the data. The monotonic function has the given derivative at the

respective node of decomposition.

We are particularly interested in the special case when n=1.

That is the case, when the decomposition of the interval [0, 1] has

no internal points. So

a

0

= 0 and

a

1

= 1. This helps to get a

parametric representation of the fuzzy number in terms of

a

-cuts

with 4 pairs of components (comprising all the interpolating points

for the left branch u

and right branch u

+

), as given below:

u¼ðu

0

;u

0

0

;u

1

;u

0

1

;u

þ

0

;u

0

0

þ;u

þ

1

;u

0

1

þÞ (3)

Eq. (3) represents non-linear fuzzy numbers. When u

0

0

¼

u

0

1

¼u

1

u

0

then the linear fuzzy numbers appears as a special

case of the representation (3). When u=(u,0,u,0,u,0,u, 0) then u

is a crisp real number. On the other hand when u=(u

1

,0,u

1

,0,u

2

,0,

u

2

, 0) then it presents a crisp interval [u

1

,u

2

]. Various shapes of

membership functions, which can be used to model task deadlines,

execution times etc., obtained by changing the derivatives at the

points u

0

;u

1

;u

þ

1

;u

þ

0

are shown in Fig. 2. So, the designer has a

wider variety of MFs to choose according to different requirements

and nature of the associated uncertainties in task characteristics.

Using the representation (3) when uand vare two fuzzy

numbers such that u¼ðu

0

;u

0

0

;u

1

;u

0

1

;u

þ

0

;u

0

0

þ;u

þ

1

;u

0

1

þÞ and v¼

ðv

0

;v

0

0

;v

1

;v

0

1

;v

þ

0

;v

0

0

þ;v

þ

1

;v

0

1

þÞ then the addition and subtrac-

tion of uand vcan be given, respectively, by

I.

uþv¼ðu

0

þv

0

;u

0

0

þv

0

0

;u

1

þv

1

;u

0

1

þv

0

1

;u

þ

0

þv

þ

0

;u

0

0

þþ

v

0

0

þ;u

þ

1

þv

þ

1

;u

0

1

þþv

0

1

þÞ

II.

uv¼ðu

0

v

þ

0

;u

0

0

v

0

0

þ;u

1

v

þ

1

;u

0

1

v

0

1

þ;u

þ

0

v

0

;u

0

0

þ

v

0

0

;u

þ

1

v

1

;u

0

1

þv

0

1

Þ

Now if we consider the deadline das the fuzzy number such

that ½u

0

;u

þ

0

is its 0-cut, then, in parametric form we can write,

d¼ðu

0

;u

0

0

;u

1

;u

0

1

;u

þ

0

;u

0

0

þ;u

þ

1

;u

0

1

þÞ. Therefore if d

i

is the dead-

line of the task T

i

, then d

i

¼ðu

0i

;u

0

0i

;u

1i

;u

0

1i

;u

þ

0i

;u

0

0i

þ;u

þ

1i

;u

0

1i

þÞ.

Hence the deadline of the task T

ij

(j-th invocation of the i-th task)

can be expressed as:

d

ij

¼ðu

0i

þI

i

þðj1ÞP

i

;u

0

0i

;u

1i

þI

i

þðj1ÞP

i

;u

0

1i

;u

þ

0i

þI

i

þðj1ÞP

i

;u

0

0i

þ;u

þ

1i

þI

i

þðj1ÞP

i

;u

0

1i

þÞ

¼ðu

0ij

;u

0

0ij

;u

1ij

;u

0

1ij

;u

þ

0ij

;u

0

0ij

þ;u

þ

1ij

;u

0

1ij

þÞ (4)

Similarly considering the processing times as fuzzy numbers in

parametric form we can get the completion time also as fuzzy

numbers in parametric form. This is because, the completion time

as the sum of processing times will be a fuzzy number, governed by

the addition operation mentioned in the previous section, when

processing times are fuzzy. Then the completion time of the task T

i

(considering single invocation) can be written as C

i

¼

ðv

0i

;v

0

0i

;v

1i

;v

0

1i

;v

þ

0i

;v

0

0i

þ;v

þ

1i

;v

0

1i

þÞ with its 0-cut as ½v

0i

;v

þ

0i

.

4. Fuzzy real-time scheduling using parameterized

memberships

Now if

m

(d

ij

) represents the membership function for the fuzzy

deadline d

ij

and C

ij

is the crisp completion time, then satisfaction of

schedulability (S

d

), to see the compliance of the deadlines over all

the periods, can be expressed by

S

d

i

ðC

ij

Þ¼

0ifC

ij

<u

0ij

1R

C

ij

u

0ij

mðd

ij

Þdðd

ij

Þ

R

u

þ

0ij

u

0ij

mðd

ij

Þdðd

ij

Þ

if u

0ij

C

ij

u

þ

0ij

1ifC

ij

>u

þ

0ij

8

>

>

>

>

>

<

>

>

>

>

>

:

(5)

The quantity R

C

ij

u

0ij

mðd

ij

Þdðd

ij

Þ=R

u

þ

0ij

u

0ij

mðd

ij

Þdðd

ij

Þ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 ½u

0ij

;u

þ

0ij

as its 0-cut, then, as shown

in the Fig. 3 below, the denominator is the total area under the

curve, whereas the numerator is the shaded area.

Now by inverting the

a

-cut functions of u

a

and u

þ

a

, as deﬁned in

the previous section, we may get the expression for the

approximated fuzzy membership function,

m

x

,x2R, as given

Fig. 1. General fuzzy interval in its

a

-cut representation (for fuzzy number,

u

1

¼u

þ

1

).

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

938

below:

m

x

¼

0ifxx

m

m

x

if x2½x

m

;x

M

1ifx2½x

M

;x

þ

m

m

þ

x

if x2½x

þ

m

;x

þ

M

0ifxx

þ

M

8

>

>

>

>

<

>

>

>

>

:

(6)

where

(1)

x

m

¼u

0

and x

þ

M

¼u

þ

0

are the corresponding points to the

support of the fuzzy number, whereas the points x

M

¼u

1

and

x

þ

m

¼u

þ

1

gives the interval (number if x

M

¼x

þ

m

) on the x-axis

with membership value 1.

Fig. 2. Various membership functions shapes model using mixed cubic-exponential Hermite interpolation parametric curves. In the respective diagrams different parameters

u¼ðu

0

;u

0

0

;u

1

;u

0

1

;u

þ

0

;u

0

0

þ;u

þ

1

;u

0

1

þÞ are shown.

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

939

(2)

m

x

are increasing (non-decreasing) function such that m

x

m

¼0

and m

x

M

¼1. And m

þ

x

are decreasing (non-increasing) function

such that m

þ

x

þ

m

¼1 and m

þ

x

þ

M

¼0.

Following are the relations that exist between m

x

and m

a

and

between m

þ

x

and m

þ

a

.

(1)

m

x

¼a$u

a

¼x;8a2½0;1;8x2½x

m

;x

M

(2)

m

þ

x

¼a$u

þ

a

¼x;8a2½0;1;8x2½x

þ

m

;x

þ

M

Also, at the end points of the interval the derivatives of m

x

and

m

þ

x

can be given by

(1)

m

x

0

¼

1

u

0

0

at x¼x

m

and m

x

0

¼

1

u

0

1

at x¼x

M

(2)

m

þ

x

0

¼

1

u

0

1

þ

at x¼x

þ

m

and m

þ

x

0

¼

1

u

0

0

þ

at x¼x

þ

M

Now the membership function

m

, can be represented para-

metrically as m¼ðx

m

;m

0

m

;x

M

;m

0

M

;x

þ

m

;m

0þ

m

;x

þ

M

;m

0þ

M

Þ, where the

monotonic components of m

x

and m

þ

x

are approximated, using the

mixed cubic-exponential Hermite interpolation, as given below:

m

x

¼m

m

þm

0

m

1þw

þt

2

ð32tÞm

M

m

m

m

0

m

þm

0

M

1þw

þm

0

M

t

1þw

m

0

m

ð1tÞ

1þw

1þw

(7)

m

þ

x

¼m

þ

m

þm

0þ

m

1þw

þ

þt

2

ð32tÞm

þ

M

m

þ

m

m

0þ

m

þm

0þ

M

1þw

þ

þm

0þ

M

t

1þw

þ

m

0þ

m

ð1tÞ

1þw

þ

1þw

þ

(8)

where m

m

¼0;m

M

¼1;m

þ

m

¼1;m

þ

M

¼0;m

0

m

¼x

M

x

m

=u

0

0

;m

0

M

¼

x

M

x

m

=u

0

1

;m

0þ

m

¼x

þ

M

x

þ

m

=u

0

1

þ;m

0þ

M

¼x

þ

M

x

þ

m

=u

0

0

þ;t

¼

xx

m

=x

M

x

m

and w

¼m

0

m

m

0

M

=m

M

m

m

.

We can re-write Eq. (5), using Fig. 1,as

Now using Eq. (6) for the membership functions and Eqs. (7)

and (8), for the left and right branches of the fuzzy deadlines, we

can express Eq. (9) as

where A

ij

¼Lðu

1ij

ÞLðu

0ij

Þþðu

þ

1ij

u

1ij

ÞþRðu

þ

0ij

ÞRðu

þ

1ij

Þ. And

Lðu

0ij

Þ;Lðu

1ij

Þare respectively the value of L(x) at the points u

0ij

and u

þ

0ij

, while Rðu

þ

0ij

Þ;Rðu

þ

1ij

Þare the same of R(x) at the points u

þ

0ij

and u

þ

1ij

with,

(1)

LðxÞ¼

1

N

m

0

m

þ

u

0ij

D

u

ij

2

3þ

2u

0ij

D

u

ij

!

x

3u

0ij

N

D

u

ij

2

1þ

u

0ij

D

u

ij

x

2

þ

1

N

D

u

ij

2

1þ

2u

0ij

D

u

ij

x

3

x

4

2N

D

u

ij

3

þ

D

u

ij

Nð1þNÞ

m

0

M

xu

0ij

D

u

ij

1þN

þm

0

m

1

xu

0ij

D

u

ij

1þN

(2)

RðxÞ¼ 1þ

1

M

m

0þ

m

u

þ

1ij

D

u

þ

ij

2

3þ

2u

þ

1ij

D

u

þ

ij

! !

xþ

3u

þ

1ij

M

D

u

þ

ij

2

Fig. 3. General fuzzy deadline.

S

d

i

ðC

ij

Þ¼

1ifC

ij

<u

0ij

1R

C

ij

u

0ij

mðd

ij

Þdðd

ij

Þ

R

u

þ

0ij

u

0ij

mðd

ij

Þdðd

ij

Þ

if u

0ij

C

ij

<u

1ij

1R

u

1ij

u

0ij

mðd

ij

Þdðd

ij

ÞþR

C

ij

u

1ij

mðd

ij

Þdðd

ij

Þ

R

u

þ

0ij

u

0ij

mðd

ij

Þdðd

ij

Þ

if u

1ij

C

ij

<u

þ

1ij

1R

u

1ij

u

0ij

mðd

ij

Þdðd

ij

ÞþR

u

þ

1ij

u

1ij

mðd

ij

Þdðd

ij

ÞþR

C

ij

u

þ

1ij

mðd

ij

Þdðd

ij

Þ

R

u

þ

0ij

u

0ij

mðd

ij

Þdðd

ij

Þ

if u

þ

1ij

C

ij

u

þ

0ij

0ifC

ij

>u

þ

0ij

8

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

<

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

>

:

(9)

S

d

i

ðC

ij

Þ¼

1ifC

ij

<u

0ij

1LðC

ij

ÞLðu

0ij

Þ

A

ij

if u

0ij

C

ij

<u

1ij

1Lðu

1ij

ÞLðu

0ij

ÞþðC

ij

u

1ij

Þ

A

ij

if u

1ij

C

ij

<u

þ

1ij

1Lðu

1ij

ÞLðu

0ij

Þþðu

þ

1ij

u

0ij

ÞþRðC

ij

ÞRðu

þ

1ij

Þ

A

ij

if u

þ

1ij

C

ij

u

þ

0ij

0ifC

ij

>u

þ

0ij

8

>

>

>

>

>

>

>

>

>

>

>

>

<

>

>

>

>

>

>

>

>

>

>

>

>

:

(10)

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

940

1þ

u

þ

1ij

D

u

þ

ij

x

2

1

M

D

u

þ

ij

2

1þ

2u

þ

1ij

D

u

þ

ij

x

3

þ

x

4

2M

D

u

þ

ij

3

þ

D

u

þ

ij

Mð1þMÞ

m

0þ

M

xu

þ

1ij

D

u

þ

ij

1þM

þm

0þ

m

1

xu

þ

1ij

D

u

þ

ij

1þM

!

(3)

N¼1þm

0

m

þm

0

M

;Du

ij

¼u

1ij

u

0ij

;M¼1m

0þ

m

m

0þ

M

and

Du

þ

ij

¼u

þ

0ij

u

þ

1ij

.

As a special case, for triangular fuzzy numbers, if we consider

the derivatives in expression (4) as u

0

0ij

¼u

1ij

u

0ij

;u

0

1ij

¼

u

1ij

u

0ij

;u

0

0ij

þ¼u

þ

1ij

u

þ

0ij

and u

0

1ij

þ¼u

þ

1ij

u

þ

0ij

, then we get

respectively, m

0

m

¼1;m

0þ

m

¼1 and m

0þ

m

¼1. This reduces

Eq. (10) to

S

d

i

ðC

ij

Þ¼

1ifC

ij

<u

0ij

1ðC

ij

u

0ij

Þ

2

ðu

þ

0ij

u

0ij

Þðu

1ij

u

0ij

Þif u

0ij

C

ij

u

1ij

ðu

þ

0ij

C

ij

Þ

2

ðu

þ

0ij

u

0ij

Þðu

þ

0ij

u

þ

1ij

Þif u

þ

1ij

C

ij

u

þ

0ij

0ifC

ij

>u

þ

0ij

8

>

>

>

>

>

>

>

>

>

<

>

>

>

>

>

>

>

>

>

:

(11)

Fig. 4 shows the variations of the satisfaction function for

various combinations of MFs. It is clear from this ﬁgure that

the parameterized method gives considerable ﬂexibility to the

schedule designer for choosing membership function shapes. He

can then model various task deadlines in a realistic manner and

obtain the effect of his choices on satisfaction of schedulability.

This method also gives similar facility for choosing execution time

model.

Now, if the execution times are deterministic then, as their sum,

the completion time C

ij

is also deterministic and algorithms were

proposed for its computation [3]. As fuzzy numbers are continuous

functions, the satisfaction function is certainly continuous and

strictly decreasing. Therefore, denoting Pas the hyperperiod of the

tasks (least common multiple of the task periods) the problem of

scheduling T

i

tasks (with fuzzy deadlines d

ij

and completion time

C

ij

at the j-th invocation) may be summarized as

Maximize S

d

¼min

i;j

S

d

i

ðC

ij

Þ;(12)

ﬁnding an optimal assignment of priorities. Where i=1,2,...,n

and j=1,2,...,P/P

i

, as the schedulability should be examined over

P time units.

Similarly considering the processing times as fuzzy numbers in

parametric form, the completion time of the j-th invocation of

the task T

i

can be written, if ½v

0ij

;v

þ

0ij

is the 0-cut, as

C

ij

¼ðv

0ij

;v

0

0ij

;v

1ij

;v

0

1ij

;v

þ

0ij

;v

0þ

0ij

;v

þ

1ij

;v

0þ

1ij

Þ. Then to measure sche-

dulability over the whole task set for all invocations within P, the

satisfaction of schedulability is deﬁned below for the task T

i

for its

j-th invocation.

S

C

i

ðd

ij

Þ¼

0ifd

ij

<v

0ij

R

d

ij

v

0ij

mðC

ij

ÞdðC

ij

Þ

R

v

þ

0ij

v

0ij

mðC

ij

ÞdðC

ij

Þ

if v

0ij

d

ij

v

þ

0ij

1ifd

ij

>v

þ

0ij

8

>

>

>

>

>

<

>

>

>

>

>

:

(13)

Proceeding in the similar way, as for S

d

i

ðC

ij

Þ, if we put, B

ij

¼

Lðv

1ij

ÞLðv

0ij

Þþðv

þ

1ij

v

1ij

ÞþRðv

þ

0ij

ÞRðv

þ

1ij

Þwith Lðv

0ij

Þ;Lðv

1ij

Þ,

as the value of L(x) at the points v

0ij

and v

þ

0ij

, while Rðv

þ

0ij

Þand

Rðv

þ

1ij

Þ, the same of R(x)at the points v

þ

0ij

and v

þ

1ij

, respectively, then

the Eq. (13) for S

C

i

ðd

ij

Þcan be written as

S

C

i

ðd

ij

Þ¼

0ifd

ij

<v

0ij

Lðd

ij

ÞLðv

0ij

Þ

B

ij

if v

0ij

d

ij

<v

1ij

Lðv

1ij

ÞLðv

0ij

Þþðd

ij

v

1ij

Þ

B

ij

if v

1ij

d

ij

<v

þ

1ij

1Rðv

þ

0ij

ÞRðd

ij

Þ

B

ij

if v

þ

1ij

d

ij

v

þ

0ij

1ifd

ij

>v

þ

0ij

8

>

>

>

>

>

>

>

>

>

>

>

>

>

<

>

>

>

>

>

>

>

>

>

>

>

>

>

:

(14)

Fig. 4. Variations of the Satisfaction Function (S

d

) for various combinations of MFs.

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

941

In the interval ½v

0ij

;v

þ

0ij

the satisfaction function S

C

i

ðd

ij

Þis strictly

increasing and continuous. Therefore the problem is summarized

as

Maximize S

C

¼min

i;j

S

C

i

ðd

ij

Þ;(15)

ﬁnding an optimal assignment of priorities, where i=1,...,nand

j=1,...,P/P

i

as the schedulability should be examined over Ptime

units.

Now considering both the deadlines and processing times as

fuzzy numbers, problem may be summarized as

Maximize S¼min

i;j

max min

C

ij

;d

ij

ðS

C

i

ðd

ij

Þ;S

d

i

ðC

ij

ÞÞ;(16)

ﬁnding an assignment of priorities, where i=1,...,nand

j=1,...,P/P

i

as the schedulability should be examined over P

time units.

Let us now consider, min

i;j

S

d

i

ðC

ij

Þ¼t. Then,

S

d

i

ðC

ij

Þt8i¼1;...;nand j¼1;...;P=P

i

:(17)

From the continuity of the satisfaction function S

d

and its inverse

function, we can therefore write:

C

ij

I

i

þðj1ÞP

i

þd

0

i

ðtÞ;i¼1;...;nand j¼1;...;P=P

i

(18)

where the quantity d

0

i

ðtÞis a crisp quantity that depends on the

minimum satisfaction, t, and is termed as the modiﬁed deadline and

the optimal priority assignment of the real-time tasks are

according to the increasing order of this quantity. Now our

interest is to ﬁnd those values of t(0 t1) for which modiﬁed

deadlines of two tasks become equal i.e. those t

ij

that satisfy:

ft

ij

jd

0

i

ðtÞ¼d

0

j

ðtÞ;j¼1;...;n;i¼1;...;n;0t

ij

1g(19)

Now since the modiﬁed deadline of different tasks changes at these

t

ij

, so the priorities of the tasks also changes at these points. Hence

we have to check the priorities of the tasks over various intervals

obtained by sequentially placing the quantities t

ij

in the increasing

order, because maximization of min

i;j

S

d

i

ðC

ij

Þis nothing other than

identifying the highest interval on the condition that the resulted

task priorities in that interval gives us a feasible schedule.

Algorithms used by Litoiu et al. [11–13] are as given below:

Algorithm 1.

Algorithm 2.

They used successive search technique to identify the interval

in which satisfaction is maximum. To do that, the fuzzy completion

times of the tasks needs to be calculated. W

i

(C

i

) is the worst fuzzy

completion time, where W

i

ðC

i

Þ¼P

i

j¼1

e

j

½C

i

=P

j

þB

L

i

;B

L

i

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 C

i

/P

j

, the latest extremity

of C

i

i.e. f

i

is taken. In doing this, the fuzzy division is transformed

into a ordinary arithmetic division. Then using the worst fuzzy

completion time the satisfaction is calculated, the minimum of

which gives us the satisfaction of the schedulability.

Example (I).

We took a three task system T = {T

1

,T

2

,T

3

} with the

following characteristics:

T

1

:e

1

= (30 10 40 10 40 10 50 10), P

1

= 170, d

1

= (154 6 160 6

160 6 166 6)

T

2

:e

2

= (65 5 70 5 70 5755), P

2

= 170, d

2

= (155 5 160 5 160

5 165 5)

T

3

:e

3

= (25 5 30 5 30 5355), P

3

= 170, d

3

= (159 2 161 2 161

2 163 2)

The results we got are summarized in the following Table 1 and

Fig. 5 shows the variation of the satisfaction function (S

d

) of the

tasks. The result shows that the task set has three satisfaction

crossover points. Tasks T

1

and T

2

changes their priorities at 0.5, that

between task T

1

and T

3

occurs at 0.2813 while for task T

2

and T

3

the

same happens at 0.2222. The completion times of the tasks observe

the deadlines at 0, 0.2222, 0.2813 and 0.5, but not at 1. Which

shows that the highest satisfaction interval for the tasks set is [0.5,

1] and the satisfaction of schedulability of the task set falls within

this interval.

Therefore, the priorities of the tasks will be [T

1

,T

2

,T

3

]. The

satisfaction of the schedulability of task set is min{1, 1, 0.9987}.

Therefore the feasible and optimal schedule will be [T

1

,T

2

,T

3

] and

the satisfaction of the schedulability of task set is 0.9987.

Example-(II).

Let us now consider the following task set obtained

with variation in the sign of the ﬁrst derivates u

0

0i

;u

0

1i

;u

0þ

0i

;u

0þ

1i

and

v

0i

;v

1i

;v

þ

0i

;v

þ

1i

T

1

:e

1

= (30 10 40 10 40 10 50 10), P

1

= 170, d

1

= (154 6 160 6

160 6 166 6)

T

2

:e

2

= (65 5 70 5705755), P

2

= 170, d

2

= (155 5 160 5

160 5 165 5)

T

3

:e

3

= (25 5 30 5305355), P

3

= 170, d

3

= (159 2 161 2

161 2 163 2)

The results are summarized in the following Table 2 and Fig. 6.

We can see that the changes in the sign of the derivatives resulted

in the effective changes in the shape of the membership functions,

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

942

which in turn changes the respective satisfaction functions. Here

the satisfaction crossover points are t

12

= 0.5, t

13

= 0.2883 and

t

23

= 0.1975. It is seen that changes in the shape of the MFs of the

task deadlines resulted in the changes of the priority crossover

point of two tasks if the peak of the MF for both the tasks are at

different points. On the other hand the priority crossover point for

two tasks remains same if both tasks has peak of the MF at the

same point. If we compare Example-(I) and (II) we see that t

12

are

same but t

13

and t

23

are different. This is because both the task T

1

and T

2

has peak of the MF at 160, while that of the task T

3

is at 161.

Here the satisfaction of schedulability is also different and is found

as 0.9999.

However the above technique is too much pessimistic in the

sense that it considers the worst case execution time (i.e. the right

extremity of the fuzzy processing time) for all the tasks .The

consideration of the worst case execution time (i.e. the right

extremity of the fuzzy processing time) always seems less logical

because there are chances that few task executions may take less

times than their worst case execution times. If a task ﬁnishes

execution well before its worst case scenario then some slacks will

result, during this slack time the processor may hardly remain idle

if there are already scheduled tasks in the system. Instead during

this slack the next high priority, yet to be executed, task will get the

processor and begin execution. This will reduce the total execution

time of the tasks and hence will increase the minimum satisfaction

signiﬁcantly. Therefore incorporation of the dynamic slack

calculation technique, proposed in [22], makes the model more

practical and realistic. To explain, let us consider a system with two

tasks T

a

and T

b

where T

a

is of higher priority than T

b

. We suppose

task T

a

ﬁnishes execution x time before than its worst case

completion time. Then task T

b

will start execution x time units

earlier and as a result ﬁnish the execution early also by same time

unit. Thus the value of the satisfaction function for both the task

will be effected. To see the possible changes in the schedulability

and satisfaction of the real-time tasks we now consider the

following realistic example:

Example (III).

Industrial Control System

Here we are considering a real life case from [11], where a real-

time system is employed for the control of an industrial plant. As

shown in Fig. 7 above, a Fiber Distributed Data Interface (FDDI).

Network connects ﬁve nodes of the system. Tasks at different

nodes are independent and preemptive. For the purpose of

simpliﬁcation in the analysis we shall consider that there are

negligible amount of communication costs between the tasks.

Here, nodes 1 to 3 are identical and they are dealing with robotic

applications. The nodes 4 and 5 are respectively dedicated to video

monitoring and user console management. We shall investigate

the task schedulability at the each node considering no common

sharable resources. The characteristics and the activities of the

tasks at the nodes 1 to 3 are given in Table 3.

There will be no priority change (no satisfaction crossover

point) among different tasks. Therefore, there is only one

satisfaction interval, which is [0, 1]. The optimal task schedule

is [T

1

,T

3

,T

4

,T

2

]. Within the hyperperiod (360) there are 6

invocations of task T

1

, 2 invocations of task T

2

, 4 invocations of task

T

3

and 3 invocations of task T

4

. The third invocations of task T

4

miss

Table 1

Results for Example (I).

Satisfaction crossover

points (t

ij

)

Satisfaction

intervals

Tasks priority

within the intervals

Interval of highest

satisfaction

Satisfaction of tasks Satisfaction of

schedulability

Optimal

task priority

t

23

= 0.2222 t

13

= 0.2813

t

12

= 0.5000

[0.0000, 0.2222] [T

3

,T

2

,T

1

] [0.5000, 1.0000] T

1

: 1.0000 T

2

: 1.0000 T

3

: 0.9550 0.9987 T

1

:1T

2

:2T

3

:3

[0.2222, 0.2813] [T

2

,T

3

,T

1

]

[0.2813, 0.5000] [T

2

,T

1

,T

3

]

[0.5000, 1.0000] [T

1

,T

2

,T

3

]

Fig. 6. Plot of Satisfaction Function S

d

for the tasks of Example (II).

Table 2

Results for Example (II).

Satisfaction crossover

points (t

ij

)

Satisfaction

intervals

Tasks priority

within the intervals

Interval of highest

satisfaction

Satisfaction of tasks Satisfaction of

schedulability

Optimal

task priority

t

23

= 0.1975 t

13

= 0.2883

t

12

= 0.5000

[0.0000, 0.1975] [T

3

,T

2

,T

1

] [0.5000, 1.0000] T

1

: 1.0000 T

2

: 1.0000 T

3

: 0.9999 0.9999 T

1

:1T

2

:2T

3

:3

[0.1975, 0.2883] [T

2

,T

3

,T

1

]

[0.2883, 0.5000] [T

2

,T

1

,T

3

]

[0.5000, 1.0000] [T

1

,T

2

,T

3

]

Fig. 5. Plot of Satisfaction Function S

d

for the tasks of Example (I).

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

943

the deadlines by 10 units of time. As a result, we get the satisfaction

of schedulability 0.4260. It is shown in Fig. 8(a).

Now let us suppose, different invocations of tasks T

1

,T

2

and T

3

and the ﬁrst two invocations of task T

4

completes earlier than their

worst case execution time producing signiﬁcant amount of slack

time in the system. We have studied the scenario with different

amount of probable slack time in the systems as shown in the

following Table 4 given below. Fig. 8 above gives the plot of

satisfaction functions for the third invocation of task T

4

for various

values of slack time. From this ﬁgure we see that with the

increasing slack time, the satisfaction of schedulability also

increases because the amount of deadline missing by the third

invocation of task T

4

sharply decreases.

Fig. 9 above shows the plot of slack time versus satisfaction of

schedulability. Therefore we can conclude that the utilization of

the dynamically calculated slack time allows the execution of the

tasks with more satisfaction and hence ensures that the hard task

deadlines are also very nicely met.

As noted earlier, in the system, the node 5 is involved for

console management. There are ﬁve tasks those are active at this

node. The tasks are independent and preemptive. Tasks T

1

,T

2

,T

3

,

and T

4

undertake display activities, whereas task T

1

is for control

functions. The details of the task characteristics and their activities

are given in Table 5.

The results we got for the task set active at the node 5 are

summarized in Table 6. There will be no priority change

Table 3

Characteristics and activities of Tasks at nodes 1–3.

Task Processing time Deadline Period Type Activity

T

1

(8, 1, 9, 1, 9, 1, 10, 1) (40, 10, 50, 10, 50, 10, 60, 10) 60 Hard Output control

T

2

(25, 5, 30, 5, 30, 5, 35, 5) (140, 20, 160, 20, 160, 20, 180, 20) 180 Hard Command processing

T

3

(28, 1, 29, 1, 29, 1, 30, 1) (50, 20, 70, 20, 70, 20, 90, 20) 90 Hard Measurement

T

4

(30, 5, 35, 5, 35, 5, 40, 5) (100, 10, 110, 10, 110, 10, 120, 10) 120 Hard Data processing

Fig. 7. Generic high-level overview of a real-time system [11].

Table 4

Variation of the Satisfaction of Schedulability with the Slack Time.

Sl. No. Slack time Satisfaction of schedulability

1 0 0.4240

2 4 0.4847

3 10 0.5740

4 20 0.7941

5 30 0.8107

6 40 0.8935

7 50 0.9527

8 60 0.9882

9 70 1.000

Fig. 9. Slack time versus satisfaction of schedulability for tasks of Node 1.

Fig. 8. Plot of satisfaction functions for the third invocation of task T

4

when, (a) slack = 0, (b) slack = 10, (c)slack = 20, (d) slack = 30, (e) slack = 40, (f)slack = 50, (g) slack = 60,

(h) slack = 70.

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

944

(satisfaction crossover points) for tasks T

4

and T

5

with others. The

plot of satisfaction function S

d

for the task T

1

,T

2

and T

3

are shown

in the Fig. 10. For tasks T

1

,T

2

and T

3

, two satisfaction crossover

points exists, which are t

12

= 0.98 and t

23

= 0.5. As shown in

Table 6, we therefore get three satisfaction intervals: 0

1

= [0, 0.5],

O

2

= [0.5, 0.98] and O

3

= [0.98, 1]. The satisfaction of schedulability

belongs to the interval O

1

. The priorities of the tasks within this

interval are [T

5

,T

2

,T

3

,T

1

,T

4

].

When the tasks are scheduled according to these priorities, then

it is found that within the ﬁrst hyperperiod (690) the 2nd and 3rd

invocations of the task T

1

miss the deadlines remarkably, resulting

a very low value of satisfaction. The task T

1

is a soft task and it deals

with the display activities. Therefore missing the deadline, by this

particular task may not be catastrophic in nature. However, these

instances of missing the deadline by the task T

1

causes the hard

periodic task T

5

and other soft tasks T

3

and T

4

to miss their deadline

at their later invocations. For example, 10th and 13th invocations

of task T

5

and 4th invocation of task T

4

will miss their respective

deadlines signiﬁcantly. Therefore utilization of the dynamically

calculated slack time becomes very much useful.

Let us now consider that the task T

2

,T

3

and T

4

ﬁnish execution

respectively 10, 8 and 7 time units earlier than their respective

worst case completion time. This accumulates a slack time of 43

unit before the execution of the 2nd invocation of task T

1

and a

slack time of 68 unit before the execution of the 3rd invocation of

task T

1

. Therefore during these slack times the processor executes

the next high priority tasks and gives us better satisfaction. Then

we get a satisfaction of schedulability 0.7429, which belongs to the

satisfaction interval O

2

. As mentioned in Table 6, the task priorities

within this interval is [T

5

,T

3

,T

2

,T

1

,T

4

]. Therefore the tasks need to

be scheduled according to these priorities.

Table 7 compares the results without and with the considera-

tion of the slack time. Thus we see that utilizing the dynamically

calculated slack time we can get a task schedule, which gives a

better satisfaction of schedulability and also ensures the meeting

of the hard task deadlines.

5. Conclusion

In fuzzy real-time scheduling membership functions (MFs) are

used to represent deadlines and execution times. Although simple

MFs such as Triangular, Trapezoidal etc. have the advantage of

simpler understanding and analysis, they contain discontinuities

and designer gets restricted choice in specifying task characteristics.

It is very likely that different task deadlines (and completion times)

may have different MFs. So ﬁnding the task having minimum

satisfactionis not so easy because it is very logical for the designerto

choose different MFs for different tasks based on the nature of the

Table 5

Characteristics and activities of Tasks at node 5.

Task Processing time Deadline Period Type Activity

T

1

(35,10,45,10,45,10,55,10) (170,30,200,30,200,30,230,30) 230 Soft Display

T

2

(15,10,25,10,25,10,35,10) (175,5,180,5,180,5,185,5) 230 Soft Display

T

3

(25,5,30,5,30,5,35,5) (170,10,180,10,180,10,190,10) 230 Soft Display

T

4

(30,5,35,5,35,5,40,5) (300,20,320,20,320,20,340,20) 345 Soft Display

T

5

(35,5,40,5,40,5,45,5) (80,5,85,5,85,5,90,5) 115 Hard Control

Table 6

Results for tasks active at node 5.

Satisfaction crossover

points (t

ij

)

Satisfaction

intervals

Task priority

within the intervals

Interval of highest

satisfaction

Satisfaction of tasks Satisfaction

of schedulability

Task priority

t

23

= 0.50 t

12

= 0.98 [0.00, 0.50] [T

5

,T

2

,T

3

,T

1

,T

4

] [0,0.50] T

1

: 0.4524 T

2

: 1.0000

T

3

: 0.9550 T

4

: 1.0000 T

5

: 1.0000

0.4524 T

1

:4T

2

:2T

3

:3

T

4

:5 T

5

:1[0.50, 0.98] [T

5

,T

3

,T

2

,T

1

,T

4

]

[0.98, 1.00] [T

5

,T

3

,T

1

,T

2

,T

4

]

Fig. 10. Satisfaction plot for task T

1

,T

2

,andT

3

of Node 5.

Table 7

Comparison between results with and without the consideration of slack time.

Dynamically calculated slack time Interval of highest satisfaction Task schedule Satisfaction of tasks Satisfaction of schedulability Task priority

Not considered O

1

: [0.00, 0.50] [T

5

,T

2

,T

3

,T

1

,T

4

]T

1

: 0.4524 0.4524 T

1

:4

T

2

: 1.0000 T

2

:2

T

3

: 1.0000 T

3

:3

T

4

: 1.0000 T

4

:5

T

5

: 1.0000 T

5

:1

Considered O

2

: [0.50, 0.98] [T

5

,T

3

,T

2

,T

1

,T

4

]T

1

: 0.7429 0.7429 T

1

:4

T

2

: 1.0000 T

2

:3

T

3

: 0.9550 T

3

:2

T

4

: 1.0000 T

4

:5

T

5

: 1.0000 T

5

:1

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

945

associated uncertainty of the task deadlines. This makes the

identiﬁcation process of the task with minimum satisfaction

difﬁcult, as task which has minimum satisfaction with one type

of MF may not be so if it is assigned another MF for its deadline,

which is observed in the plot of the satisfaction function against the

deadlines with different MFs. Therefore the whole optimization

process may become wrong as it maximizes the minimum

satisfaction. Hence choosing the proper MF for a particular task is

very much crucial, so is the task having minimum satisfaction.

The parametric method proposed here is very versatile and has

the ability to model a wide variety of symmetric and asymmetric

MFs as it allows intuitively deﬁning smooth MFs for deadlines and

execution times. Triangular and Trapezoidal MFs appear as special

cases. Simple numerical examples successfully demonstrate the

usefulness of the method and the effect of changes in parameter-

ized MFs on the Satisfaction of Schedulability and task priorities.

The dynamic slack calculation technique helps us to get the actual

task schedule and the value of the satisfaction of schedulability and

removes the pessimistic nature of the Litoiu et al. proposed

technique. A comparison between the Litoiu’s technique and the

proposed approach is given in the Table 8.

Future work will aim towards:(a) Allocation of slack times to the

non-periodic real-time or non real-time tasks. Speciﬁcally one may

try to ﬁnd some relation between the total fuzziness introduced in

the timing constraints of the real-time periodic tasks and the total

slack time of the system. (b) Learning machines like neural networks

(NNs) may be used for proactive scheduling after training them on

several test cases.(c) Performance of the real-time systems with soft

computing techniques mentioned above may be studied under

transient overload conditions, where some aperiodic tasks arrive to

make the problem more challenging for the scheduler. (d)

Theoretical analysis of fuzzy real-time scheduling.

Acknowledgement

First author gratefully acknowledge the moral support of

National Professor of Bangladesh Dr. N. Islam, FVC, USTC and the

ﬁnancial support of the University Grants Commison, New Delhi,

India.

References

[1] C.M. Krishna, K.G. Shin, Real-Time Systems, McGraw-Hill, 1997, pp. 40–137.

[2] L. Sha, Generalized rate-monotonic scheduling theory: a framework for devel-

oping real-time systems, Proceedings of the IEEE 82 (1) (1994) 68–82.

[3] C.L. Liu, J.V. Layland, Scheduling algorithms for multiprogramming in hard real-

time systems, Journal of the ACM 20 (1973) 46–61.

[4] J.W.S. Liu, Real-Time Systems, Pearson Education Asia, 2001, pp. 115–182.

[5] L. Sha, et al., Real-time scheduling theory: a historical perspective, Real-Time

Systems 28 (2004) 101–155.

[6] R. Mall, Real-Time Systems Theory and Practice, Pearson Education, 2007, pp. 35–

110.

[7] A.P. Cucala, J. Villar, Schedulability analysis of real-time systems under uncer-

tainty: fuzzy approach, in: IPMU 2002, Annecy, France, July, 2002.

[8] G.J. Klir, U.St. Clair, Yuan Bo, Fuzzy Set Theory-Foundations and Applications,

Prentice-Hall International, 1997, pp. 169–213.

[9] W. Slany, Scheduling as a fuzzy multiple criteria optimization problem, Fuzzy Sets

and Systems 78 (1996) 192–222.

[10] H.J. Zimmermann, Fuzzy Set Theory and its Applications, Allied Publishers

Limited, 1996.

[11] M. Litoiu, R. Tadei, Fuzzy scheduling with application to real-time systems, Fuzzy

Sets and Systems 121 (2001) 523–535.

[12] M. Litoiu, R. Tadei, Real-time task scheduling with fuzzy deadlines and processing

times, Fuzzy Sets and Systems 117 (2001) 35–45.

[13] M. Litoiu, R. Tadei, Real-time task scheduling allowing fuzzy due dates, European

Journal of Operational Research 100 (1997) 475–481.

[14] 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, 1999, pp.

773–778 (II).

[15] H. Ishii, M. Tada, T. Masuda, Two scheduling problems with fuzzy due dates, Fuzzy

Sets and Systems 46 (1992) 339–347.

[16] F. Terrier, Z. Chen, Fuzzy calculus applied to real-time scheduling, in: Proc. FUZZ-

IEEE, 1994, 1905–1910.

[17] J. Lee, A. Tiao, J. Yen, A fuzzy rule-based approach to real-time scheduling, in: Proc.

FUZZ-IEEE, 1994, 1394–1399.

[18] I.B. Tursken, Approximate reasoning for production planning, Fuzzy Sets and

Systems 26 (1998) 1–15.

[19] I.B. Tursken, D. Ulguary, Q. Wang, Hierarchical scheduling based on approximate

reasoning, a comparison with ISIS, Fuzzy Sets and Systems 46 (1992) 349–371.

[20] M. Litoiu, T.C. Ionescu, J. Labarta, Dynamic task scheduling in distributed real-

time systems using fuzzy rules, Microprocessors and Microsystems 21 (1998)

299–311.

[21] www.univ-brest.fr/singhoff/cheddar.

[22] Y.H. Lee, C.M. Krishna, Voltage-clock scaling for low energy consumption in ﬁxed

priority real-time systems, Real-Time Systems 24 (2003) 303–317.

[23] M.L. Guerra, L. Stefanini, Approximate fuzzy arithmetic operations using mono-

tonic interpolations, Fuzzy Sets and Systems 150 (2005) 5–33.

[24] P.K. Muhuri, K.K. Shukla, Real-time task scheduling with fuzzy uncertainty in

processing time and deadlines, Applied Soft Computing Journal 8 (2008) 1–13.

Table 8

Comparison between Litoiu’s technique and the proposed approach.

Sr. No. Property Litoiu’s technique Proposed method Remarks

1. Flexibility to the schedule designer. Only trapezoidal and

triangular membership

functions are possible.

Smooth continuos

functions can be chosen;

Litoiu’s functions are

special cases.

Application speciﬁc choice of membership

function leads to a more realistic model.

2. Satisfaction of schedulability Medium to high Very high Please see Example-(II). Higher satisfaction

of schedulability means there are more

compliance of the completion time wih the

task deadline.

3. Dynamic slack computation Not considered Taken care of Please see Example-(III).

4. Continuous and differentiable

membership functions

Not considered Includes continuous

and differentiable

membership functions.

In future we intend to carry a theoretical

analysis of Fuzzy real-time scheduling using

analytical optimization techniques. These

will require calculation of 1st and 2nd

differential coefﬁcients of an objective

function which will require continuous and

differentiable membership functions.

P.K. Muhuri, K.K. Shukla / Applied Soft Computing 9 (2009) 936–946

946