Research Article

Integrated Project Scheduling and Staff Assignment with Controllable Processing Times

Procedure 3

Function buildSolution().
Procedure  buildSolution( , , )
foreach  set   do
   foreach  task according to   do
     set the starting time of the task (denoted ) according to the release time of
    this task and the completion times of the predecessors of the task, looking for
    the minimum possible starting time
     repeat
    assign employees, who are able to perform the task, to the task following
      the until the is reached
    if  the assignment is unfeasible  then
       :=
    end
     until  the assignment is feasible;
   end
end
 check the feasibility of the solution
end