fuzzy scheduling
Post on 05-Feb-2016
54 Views
Preview:
DESCRIPTION
TRANSCRIPT
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
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.
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
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
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)
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?
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
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
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
10
Waiting time is A - crispSlack time is B - crisp
Fuzzy Rules Observed System State Fuzzy Advice
Time criterion is C- fuzzy
+
DEFUZZIFICATION
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
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)
13
0
1.0
djU Cj
j(Cj)
djL
0
1.0
djU Cjdj
LejL ej
U
j(Cj)
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
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
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
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
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
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
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.
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}
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.
23
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]
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
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)
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.
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}
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!
top related