You are on page 1of 20

University Course Scheduling Using

Parallel Multi-objective Evolutionary


Algorithms
// -


-
/
:
)University
(Course Scheduling )
(Timetabling problem

) (courses )hard
(constraints )soft
.(constraints )non-
) (problem (polynomial-time hard (NP-hard
)
(exponentially .

:
.
.

.
1

.1

:


.
:



]. [1



/
.


).(2.1
:1

.
:2
/ ) (fitness function
/
/
.
2

:2.1 .
:3

.
)local optimal
(solution ).(2.2

:4
.
)Roulette-wheel
(selection

/
.

.

.
3

:




.
.


) (hard and soft constraints

.

:



.
/

.



) (partitioning )(communications
) (agglomeration ).[2] (mapping

.

)
( ].[2



) (


.
.



].[2

:

/
.



.

.
)(
/

].[6


)(
/
.



].[6


.


);Abramson and Abela 1992; Blum et al. 2002
(Lima et al. 2001; Piola 1994


.

. )(2001


)(2001
.
) (2004



].[7



)(O-clients

) (O-clients / )(GEP-clients
].[8

) (Message Passing programming )Shared
(Memory
.
/

) (Message Passing programming
).[9] (Shared Memory

.2

:
:

/

.
:

.
16
.
60

90 .



: /

, .
{S,I,C,R,L,O} : = S
} {s1, s2, ..., si /
(m, y, std_slot) :
:m :y
:std_slot /
.}i1, i2, ...,
I ={ij

(inst_no, inst_slot) : :inst_no
inst_slot
.
}C = {c1, c2, ..., cn

si, co_no, section, cap, tj , th, ph, ph_type,) :
( ph_inst :si
:co_no
:section :cap
:tj :th
:ph
:ph_type
0
1
2 3
4 )(
ph_inst
0
8

1
2
.
} R = {r1, r2, ... , r
(cap, d, t) : :cap
:d
0
1
:t
0 1
/ 2 3
4 L= {l1, l2, ..., lk} .

(n, d) : :n
9-1
6 -1 :d
.51 O = {o1, o2, ...,
} oq
:oq
.
) (Hard ) .(Soft
) (infinity
.
: ) (3.1
} G= {g1, g2, ..., gw
)(
.

:3.2 .
) (vector
) (course, room_no, ph_tslot, lab_no, th_tslot
:course :room_no

:ph_tslot
:lab_no
:th_tslot
.




.



)hard and soft
(constraints .
:


) (infinity
.
:

.

10

.

.

/
.


:
/
.

.
.
/
.
:



].[3
)A survey of parallel search algorithms
[4] (for discrete optimization problem


:
:

.
11

:
.
:

.


)Single Instruction,
(Multiple Data
.


)[3,4]. (heterogeneous environment

)shared address space
(computer )(message passing computer



)] (3.2
.[4
) (



.



12




)centralized dynamic load
.[5] (balancing algorithm
:
++C

:

.
:Class diagram ) (3.2 ) (class diagram
)( associations
.

:3.2 class diagram

):(flowcharts
) (3.3

.

.3

:
/ )
(4.1
.

13

) (4.2


.

:4.2 .
) (4.3
) (average fitness )
(popSize 700 )
(numGener 700
.

) 4.4 (4.5
)(hard and soft
.

.

:4.4 ).(hard cost

14

:4.5 ).(soft cost


.4

:
:
] [1 /
:
.1
.
.2


.
.3

.
.4

.
:
:
.1
).(PSO algorithm
.2
.
.3
.
.4 .
15

.5

.(GUI)

: .6
M. Aldasht, M. Alsaheb, S. Adi, and M. A. Qopita, [1]
University course scheduling using evolutionary
algorithms, in The Fourth International MultiConference on Computing in the Global Information
.Technology (ICCGI 2009), 2009
I. Foster, Designing and building parallel [2]
.programs, 1995
M. Tomassini, Parallel and distributed evolutionary [3]
.algorithms: A review
A. Grama and V. Kumar, A survey of parallel [4]
.search algorithms for discrete optimization problems
M. Aldasht, J. Ortega, and C. Puntonet, Dynamic [5]
load balancing in heterogeneous clusters exploitation of
.the processing power, 2007
D. Datta, K. Deb, and C. M. Fonseca, Solving class [6]
timetabling problem of IIT kanpur using multi-objective
.evolutionary algorithm, 2006
P. Pongcharoen, W. Promtetn, P. Yenradee, and C. [7]
Hicks, Stochastic optimization timetabling tool for
.university course scheduling, 2007

16

H. Park, A. Grings, M. Santos, and A. Soares, Parallel [8]


hybrid evolutionary computation: Automatic tuning of
parameters for parallel gene expression programming,
.2008
J. Digalakis and K. Margaritis, Parallel evolutionary [9]
.algorithms on mpi

17

:


) (Evolutionary Algorithm

).(near optimal

)(hard, soft

.
/





) (soft constraints
].[1

)
.(MPI )
(cluster .
)(Soft Constraints
) (Hard Constraints
.

) (soft cost
) .(hard cost

18

6
7 / .

19

20

You might also like