Abstract — The Employee Timetabling Problem (ETP) is
concerned with assigning a number of employees into a given
set of shifts over a fixed period of time, e.g. a week, while meet-
ing the employee’s preferences and organizational work regu-
lations. The problem also attempts to optimize the
performance criteria and distribute the shifts equally among
the employees. The problem is considered a classical NP-com-
plete optimization problem. It has received intensive research
during the past few years given its use in industries and orga-
nizations. Several formulations and algorithms based on local
search have been proposed to solve ETPs [12, 15, 17, 18]. In
this paper, we propose a complete approach using integer lin-
ear programming (ILP) to solve these problems. The ILP
model of interest is developed and solved using the generic ILP
solver CPLEX and the Boolean Satisfiability ILP solver PBS.
Experimental results indicate that the proposed model is trac-
table for reasonable-sized ETP problems.
Index Terms — Employee Timetabling, Optimization,
Scheduling, ILP, Boolean Satisfiability.
1. INTRODUCTION
Employee Timetabling Problem (ETP) represent an im-
portant class of optimization problems in operational re-
search. The problem was originally associated with
timetabling of classes in schools and universities [22], but
has recently been extended to schedule employees in large
organizations, such as hospitals [12], factories, etc. Given a
number of employees and shifts, the goal is to assign em-
ployees to shifts while satisfying all of the employees and
organizational constraints. Many formulations and algo-
rithms have been proposed to solve ETP. Most of these al-
gorithms are based on local search techniques, namely hill
climbing, simulated annealing, and tabu search [15, 17, 21,
18, 7]. Such algorithms cannot prove unsatisfiability or
guarantee that a solution is optimal. In other words, if a so-
lution is found, it cannot guarantee that this solution has the
best possible optimization cost.
In this paper, we propose an integer linear programming
(ILP) approach to solve the ETP. The approach is complete
and hence examines the entire search space defined by the
problem to prove that either the problem has no solution,
i.e. the problem is unsatisfiable, or that a solution does ex-
ist, i.e. the problem is satisfiable. If the problem is satisfi-
able, our approach will search all possible solutions to find
the optimal solution.
Recently, advanced Boolean Satisfiability (SAT) solvers
have been extended to solve ILP problems. The SAT prob-
lem is a central problem in artificial intelligence and com-
puter science and has received considerable attention from
researchers. Many complex Engineering problems have
been successfully solved using SAT. Such problems in-
clude routing [20], power optimization [2], verification [4],
and graph coloring [9], etc. Today, several powerful SAT
solvers exist and are able of handling problems consisting
of thousands of variables and millions of constraints.
In this paper, we will also show how to formulate the
ETP as an ILP problem and explore the possibility of using
advanced SAT techniques to solve the ETP problem. We
also use the commercial generic-based ILP solver, CPLEX,
to test our instances. We report results for a variety of orga-
nization sizes. Initial results indicate the effectivity of the
proposed approach. The proposed approach is complete and
is guaranteed to identify the optimal schedule.
This paper is organized as follows. Section 2 provides a
general overview of Boolean Satisfiability. Section 3 shows
how to formulate the ETP as an ILP instance. A detailed ex-
ample is shown in Section 5. Experimental results are pre-
sented and discussed in Section 5. The paper is concluded
in Section 6.
2. BOOLEAN SATISFIABILITY
The Boolean satisfiability (SAT) problem involves find-
ing an assignment to a set of binary variables that satisfies
a given set of constraints. In general, these constraints are
expressed in products-of-sum form, also known as conjunc-
tive normal form (CNF). A CNF formula on binary
variables consists of the conjunction (AND) of
clauses each of which consists of the dis-
junction (OR) of literals. A literal is an occurrence of a
Boolean variable or its complement.
Most current SAT solvers [13, 19, 16] are based on the
original Davis-Putnam backtrack search algorithm [10].
The algorithm performs a depth first search process that
traverses the space of variable assignments until a satis-
fying assignment is found (the formula is satisfiable), or all
combinations have been exhausted (the formula is unsatis-
fiable). Originally, all variables are unassigned. The algo-
rithm begins by choosing a decision assignment to an
unassigned variable. A decision tree is maintained to keep
track of variable assignments. After each decision, the algo-
rithm determines the implications of the assignment on oth-
er variables. This is obtained by forcing the assignment of
the variable representing an unassigned literal in an unre-
solved clause, whose all other literals are assigned to 0, to
satisfy the clause. This is referred to as the unit clause rule.
If no conflict is detected, the algorithm makes a new deci-
ϕ n
x
1
… x
n
, ,
m ω
1
…ω
m
, ,
k l
2
n
Solving Employee Timetabling Problems Using Boolean Satisfiability
Fadi Aloul, Bashar Al-Rawi*, Anas Al-Farra, Basel Al-Roh
Department of Computer Engineering, American University of Sharjah (AUS), UAE
*Department of Computer Engineering, American University in Dubai (AUD), UAE
1-4244-0674-9/06/$20.00 ©2006 IEEE.