fuzzy scheduling
DESCRIPTION
Fuzzy Scheduling. Contents 1. Introduction to Fuzzy Sets 2. Application of Fuzzy Sets to Scheduling Problems 3. A Genetic Algorithm for Fuzzy Flowshop Scheduling Problem. Literature 1. Fuzzy sets, uncertainty, and information , G. J. Klir and T.A. Folger. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/1.jpg)
1
Fuzzy Scheduling
Contents
1. Introduction to Fuzzy Sets
2. Application of Fuzzy Sets to Scheduling Problems
3. A Genetic Algorithm for Fuzzy Flowshop Scheduling Problem
![Page 2: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/2.jpg)
2
Literature
1. Fuzzy sets, uncertainty, and information, G. J. Klir and T.A. Folger. Englewood Cliffs, N.J : Prentice Hall, 1988.
2. "Flowshop Scheduling with Fuzzy Duedate and Fuzzy ProcessingTime", by H. Ishibuchi and T. Nurata, in: Scheduling UnderFuzziness, R. Slowinski, and M. Hapke, (eds), Physica-Verlag,A Springer-Verlag Company, 2000, pages 113-143
3. "Genetic algorithms and neighborhood search algorithms forfuzzy flowshop scheduling problems", Ishibuchi, H., Yamamoto,N., Murata, T., Tanaka., H, Fuzzy Sets and Systems Vol. 67,No.1, 1994, pages 81-100.
![Page 3: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/3.jpg)
3
Introduction to Fuzzy Sets
crisp versus fuzzy
• conventional logic: statement is true • "classical" set theory: an element belongs to a set or not• optimisation: a solution is feasible or not
• Basic foundations of fuzzy sets:Lotfi Zadeh, Fuzzy Sets, Information and Control, Vol. 8, 1965
• dichotomous yes-or-no-type • more-or-less type
![Page 4: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/4.jpg)
4
• Classical set: x A or x A
Example. A - set of even natural numbers less than 10A = {2, 4, 6, 8}A(x) degree of membership of x in A
A(1) = 0 A(2) = 1...
or
AxAx
xA if0if1
)(
• Fuzzy sets A~ )(~ xA takes on values in the range [0, ], is usually 1
:
}|))(,({~~ XxxxA A
![Page 5: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/5.jpg)
5
Examples.
A~ = "real number close to 10"
0
1.0
15 x5 10
)(~ xA
A~ = ”integers close to 10”= { (7, 0.1), (8, 0.5), (9, 0.8), (10, 1), (11, 0.8), (12, 0.5), (13, 0.1)
![Page 6: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/6.jpg)
6
Fuzzy sets and probability measure
two bottles of liquid
first bottlehas membership 0.91in the fuzzy setof all drinkable liquids
second bottleprobability that it containsdrinkable liquids is 0.91
Which bottle would you choose?
![Page 7: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/7.jpg)
7
Application of Fuzzy Sets to Scheduling Problems
1. Approximate reasoning Approximate Reasoning is the process by which a possibleimprecise conclusion is deduced from a collection of imprecisepremises.Fuzzy IF-THEN Production Rules
2. Fuzzy constraintsHow to calculate satisfaction of the flexible constraints?
3. Fuzzy parametersMost often imprecise or incomplete are:
• fuzzy due dates• fuzzy processing times
![Page 8: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/8.jpg)
8
Example of a rule-based system for dispatching
Release job j next
Time characteristics Machine utilisation External priority
Slack time Waiting time
Approximate Reasoning
![Page 9: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/9.jpg)
9
Waiting time: {long, medium, short}Slack time: {critically short, short, sufficient}Time characteristics: {urgent, not urgent}
IF Waiting time is longAND Slack time is critically shortTHEN Time characteristics is urgent
IF Waiting time is mediumAND Slack time is critically shortTHEN Time characteristics is urgent
IF Waiting time is shortAND Slack time is critically shortTHEN Time characteristics is urgent
IF Waiting time is mediumAND Slack time is shortTHEN Time characteristics is not urgent...
0
1.0
8 T63 4.5
j(T) criticallyshort short sufficient
![Page 10: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/10.jpg)
10
Waiting time is A - crispSlack time is B - crisp
Fuzzy Rules Observed System State Fuzzy Advice
Time criterion is C- fuzzy
+
DEFUZZIFICATION
![Page 11: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/11.jpg)
11
Fuzzy Constraints
CxCx
xC constraint violatesif0 constraint satisfiesif1
)(
C(x) satisfaction grade of the solution x
crisp constraint
CxCx
CxxC
constraint violatesif0 constraint satisfiespartially if)1,0(
constraint satisfies complitelyif1)(fuzzy constraint
![Page 12: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/12.jpg)
12
Fuzzy Due Date
dj duedate of job jCj completion time of job j
jj
jjjj dC
dCC
if0if1
)(satisfaction grade
0
1.0
dj Cj
j(Cj)
![Page 13: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/13.jpg)
13
0
1.0
djU Cj
j(Cj)
djL
0
1.0
djU Cjdj
LejL ej
U
j(Cj)
![Page 14: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/14.jpg)
14
A Genetic Algorithm forFuzzy Flowshop Scheduling Problems
Problem Statement
flow shop schedulingn jobs which have fuzzy duedatesm machinessequence of n jobs is represented by a vector x=(x1, x2, ... ,xn)pi,j - processing time of job j on machine iCi,j - completion time of job j on machine i
C1,x1 = p1,x1
Ci,x1 = Ci-1,x1
+ pi,x1 for machines
i=2,3,...,m
C1,xk = C1,xk-1
+ p1,xk for jobs
k=2,3,...,n
Ci,xk= max {Ci-1,xk
, Ci,xk-1 } + pi,xk
for machines i=2,3,...,m and
for jobs k=2,3,...,n
![Page 15: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/15.jpg)
15
Objective 1:Maximisation of minimum satisfaction gradeMaximise fmin = min{ j(Cj) : j=1,2,...,n}
Objective 2:Maximisation of total satisfaction grade
n
jjjsum Cf
1)(Maximise
![Page 16: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/16.jpg)
16
total number of possible solutions: n! optimal solution can be found only for small-size problems for large-size problems search techniques could be used
Genetic algorithm
NotationN number of individuals in each populationxp
i i-th individual in the p-th populationp = {xp
i : i=1,2, ... , N} individuals in the p-th population
Characteristics of the algorithm• selection based on the roulette wheel• two-point order crossover• shift mutation• elite strategy
![Page 17: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/17.jpg)
17
Step 1. InitialisationRandomly generate N individuals to construct an initial population 1
Step 2. SelectionSelect N-1 individuals from the current population usingthe roulette wheel selection method with linear scaling
pj
pj
p
pi
pip gg
ggP
pxx
xx
})()({
)()()(
min
minSelection probability
g(x) objective function fmin or fsum
gmin(p ) = min { g(xpj ) : xp
j p}
objective functionof the individual
minimum objective functionof the whole population
![Page 18: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/18.jpg)
18
Step 3. Crossover• Two-point order crossover is applied to each of the selected pairs
with a pre-specified crossover probability.• When the crossover operator is not applied one parent becomes
an offspring.
Parent 1 J1 J2 J3 J4 J5 J6 J7 J8 J9 J10
Offspring J1 J2 J5 J3 J6 J7 J4 J8 J9 J10
Parent 2 J5 J3 J6 J9 J10 J1 J7 J2 J4 J8
![Page 19: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/19.jpg)
19
Step 4. Mutation• Applied to each of the individuals generated by the crossover
with a pre-specified mutation probability.
J1 J2 J5 J3 J6 J7 J4 J8 J9 J10
J1 J2 J8 J5 J3 J6 J7 J4 J9 J10
![Page 20: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/20.jpg)
20
Step 5. Elitist strategy• Add the best individual from the previous population to the new
N-1 individuals generated by the crossover and mutation.
Step 6. Termination test• If a pre-specified stopping condition is satisfied stop.
![Page 21: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/21.jpg)
21
The value of the Objective function 1 (maximisation of theminimum satisfaction grade) is 0 if the satisfaction grade ofat least one job is 0.
0
1.0
djU Cjdj
LejL ej
U
j(Cj)
jU
jjU
j
Ujj
Ljjj
Ljj
Ljj
jj
CdCddCeC
eCeCC
if)(if)(if)(
)(
is a positive constant
Objective 1’:Maximisation of minimum satisfaction gradeMaximise f’min = min{j(Cj) : j=1,2,...,n}
![Page 22: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/22.jpg)
22
Summary
Fuzzy sets and logic can be successfully used to treat varioustypes of uncertainty that exist in scheduling problems.Fuzzy duedate and fuzzy processing time are typical examplesof such uncertainty.
Many conventional scheduling problems could be reformulatedas fuzzy scheduling problems.
![Page 23: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/23.jpg)
23
![Page 24: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/24.jpg)
24
Experiments
• Population size N = 50• Crossover probability = 0.9• Mutation probability = 0.3• Stopping condition = 2000 generations
• Number of machines m = 10• 100 problems with n = 10 jobs
100 problems with n = 20 jobs100 problems with n = 50 jobs
• Processing time pi,j is a random integer from the interval [1,99]
![Page 25: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/25.jpg)
25
• Each job has a fuzzy duedate
How to generate djL and dj
U ?
1. Randomly generate a sequence x=(x1, x2, ... ,xn), n=10, 20, 50for each test problem
2. Calculate the completion time of each job Cj(x)
3. Calculate for each job j dj
L = Cj(x) - djU = Cj(x) +
is a random integer from the interval [100, 200]
0
1.0
djU Cj
j(Cj)
djL
![Page 26: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/26.jpg)
26
jj
jjjjj
jj
jj
CCCCCCC-
CCC
)(if0)()(if2/))((1
)(if1)(
xxxx
x
jU
j
Ujj
Lj
Lj
Uj
Ljj
Ljj
jj
CddCddddC-
dCC
if0if)/()(1if1
)(
0
1.0
djU Cj
j(Cj)
djL
j(Cj)=0.5 if the jobs are processed in the order xx is the optimal solution for Objective 1(maximisation of the minimum satisfaction grade)
![Page 27: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/27.jpg)
27
Problem size 10-job 20-job 50-jobMinimum satisfaction grade 0.500 0.000 0.000Average satisfaction grade 0.500 0.485 0.499
Problem size 10-job 20-job 50-jobTotal satisfaction grade 8.376 17.797 46.693Average satisfaction grade 0.838 0.890 0.934
The value of the Objective function 1 (maximisation of theminimum satisfaction grade) is 0 if the satisfaction grade ofat least one job is 0.
![Page 28: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/28.jpg)
28
0
1.0
djU Cjdj
LejL ej
U
j(Cj)
jU
jjU
j
Ujj
Ljjj
Ljj
Ljj
jj
CdCddCeC
eCeCC
if)(if)(if)(
)(
is a positive constant
Objective 1’:Maximisation of minimum satisfaction gradeMaximise f’min = min{j(Cj) : j=1,2,...,n}
![Page 29: Fuzzy Scheduling](https://reader036.vdocument.in/reader036/viewer/2022062309/56815a95550346895dc810f2/html5/thumbnails/29.jpg)
29
Problem size 10-job 20-job 50-jobMinimum satisfaction grade 0.500 0.472 0.367Average satisfaction grade 0.500 0.557 0.629
Heuristic method for initial solution:Process the given jobs in an increasing order of their duedates.With fuzzy duedates we can use values of dj
U to order the jobs
Initialisation: one heuristic schedule and N-1 randomly generated
Problem size 10-job 20-job 50-jobMinimum satisfaction grade 0.499 0.399 -69.030Average satisfaction grade 0.501 0.621 -10.409
Genetic algorithm can effectively utilise heuristic initial solutions!