Docstoc

KI 2009

Document Sample
KI 2009 Powered By Docstoc
					    A Comparison of Neighbourhood
     Topologies for Staff Scheduling
    With Particle Swarm Optimisation
                       TU Ilmenau
           Department of Commercial Information
              Technology for Services (WI2)




1



     Dipl. Wirt.-Inf. Maik Günther   maik.guenther@gmx.de

     Prof. Dr. Volker Nissen         volker.nissen@tu-ilmenau.de
    • Description of the Application Problem I


    • Description of the Application Problem II


    • Particle Swarm Optimization


    • Results and Conclusion




2



                       Structure of presentation
    • originates from a German logistics service provider which operates
      in a spatially limited area 7 days a week almost 24 hours a day
    • nine workstations
    • 65 employees on duty with different start and end times according
      to their work-time models
    • employees are quite flexible in terms of working hours (13 different
      working time models)
    • strict regulations e.g. with regard to qualifications (damage,
      injuries)
    • personnel demand is given in 15-minute intervals with large
      variations for individual workstations during the day


    • monthly staff scheduling is carried out with MS EXCEL™
    • they are not able to make sub-daily workstation-rotations with MS
      EXCEL™
3



                       Application problem I
                                4
                                                                                  demand for personnel




                                                                                  10
                                                                                  11
                                                                                  12
                                                                                  13
                                                                                  14
                                                                                  15
                                                                                  16
                                                                                  17
                                                                                  18
                                                                                  20
                                                                                  21
                                                                                  22
                                                                                  23
                                                                                  24
                                                                                  25
                                                                                  26
                                                                                  27
                                                                                  28
                                                                                  29
                                                                                  30
                                                                                  31
                                                                                  32
                                                                                  33




                                                                                  19




                                                                                   0
                                                                                   1
                                                                                   2
                                                                                   3
                                                                                   4
                                                                                   5
                                                                                   6
                                                                                   7
                                                                                   8
                                                                                   9
                                                                          03:30
                                                                          03:45
                                                                          04:00
                                                                          04:15
                                                                          04:30
                                                                          04:45




                                    workstation 1
                                                                          05:00
                                                                          05:15
                                                                          05:30
                                                                          05:45
                                                                          06:00
                                                                          06:15
                                                                          06:30
                                                                          06:45
                                                                          07:00
                                                                          07:15




                                    workstation 2
                                                                          07:30
                                                                          07:45
                                                                          08:00
                                                                          08:15
                                                                          08:30
                                                                          08:45
                                                                          09:00
                                                                          09:15
                                                                          09:30




                                    workstation 3
                                                                          09:45
                                                                          10:00
                                                                          10:15
                                                                          10:30
                                                                          10:45
                                                                          11:00




workstations
                                                                          11:15
                                                                          11:30
                                                                          11:45
                                    workstation 4

                                                                          12:00
                                                                          12:15
                                                                          12:30
                                                                          12:45
                                                                          13:00
                                                                          13:15
                                                                          13:30
                                                                          13:45
                                                                          14:00
                                    workstation 5




                                                                          14:15
                                                                          14:30
                                                                          14:45
                                                                          15:00
                                                                          15:15
                                                                          15:30
                                                    15-minute intervals




                                                                          15:45
                                                                          16:00
                                                                          16:15
                                    workstation 6




Demand for personnel at the 9
                                                                          16:30
                                                                          16:45
                                                                          17:00
                                                                          17:15
                                                                          17:30
                                                                          17:45
                                                                          18:00
                                                                          18:15
                                                                          18:30
                                                                          18:45
                                    workstation 7




                                                                          19:00
                                                                          19:15
                                                                          19:30
                                                                          19:45
                                                                          20:00
                                                                          20:15
                                                                          20:30
                                                                          20:45
                                                                          21:00
                                    workstation 8




                                                                          21:15
                                                                          21:30
                                                                          21:45
                                                                          22:00
                                                                          22:15
                                                                          22:30
                                                                          22:45
                                                                          23:00
                                                                          23:15
                                    workstation 9




                                                                          23:30
                                                                          23:45
    • input
       • full-day assignment (determines availability of personnel)
       • demand for personnel at the nine workstations in 15-minute
         intervals
       • matrix of qualifications (employees and workstations)


    • relevant constraints (constraints are penalised with error points)
       • presence and absence
       • one employee can only assigned to one workstation at a time
       • qualifications
       • avoid over- and understaffing
       • no unnecessary workstation-rotations
       • ...

5



                          Input and constraints
    • Description of the Application Problem I


    • Description of the Application Problem II


    • Particle Swarm Optimization


    • Results and Conclusion




6



                       Structure of presentation
    • department of a store (clothes)
    • each day 10 hours (from Monday to Saturday)
    • 15 employees with different contracts
      (weekly working time 10, 20, 25, 30, 38 and 40 hours)
    • 2 workplaces (sales and cash register)
    • variable customer frequency during the day
       variable personnel demand with large variations for individual
      workstations during the day
    • demand is given in 1-hour intervals for 1 year




              Create a rooster with automated
              generated working time models!
7



                       Application problem II
    • hard constraints
       • only available employees are scheduled
       • only one workstation per employee at a time
       • working time models in 1-hour intervals


    • soft constraints (error points):
       • employees should not work more than their maximal working
         time per week
       • keep minimal/maximal allowed length of working time models
       • only one or no working time model per employee a day
       • avoid over- and understaffing
       • no unnecessary workstation-rotations
       • …

8



                         Input and constraints
     • population-based modern heuristic
      initialize the swarm
       swarm members are assumed to be massless particles
     •calculate fitness of initial particles
       each particle together with each particle and gBest
     •determine pBest for its position within a solution space
      repeat a solution to the problem
       embodies
             for i = 1 to number of fitness function
     • they search for optima with the aidof aparticles
                    calculate new position with 4 actions
     • particles exchange information, which can positively influence the
                    repair particle
       development of the population as a whole (pBest, gBest/lBest)
                    calculate fitness
                    new pBest and new gBest?
             next i
      until termination criterion holds
      output gBest from current run


     • termination of PSO after 400.000 inspected solutions (to keep
       results comparable)
11



                        Overall outline of PSO approach
     • for each element (> 0) of the matrix
     • probability to chose one of the 4 actions
        • 1: no change
        • 2: random workstation
        • 3: workstation from pBest at the same position
        • 4: workstation from gBest at the same position


     • PSO can be improved with a repair
     • repair in the following order (descending error point size)
        • working time models  only in problem II
        • qualifications
        • overstaffing and understaffing
        • rotations of workstations

12



                           Calculate the new position with
                           4 actions & repair particles
     • gBest
        • all particles are connected to each other
        • each particle immediately knows the best global
          value found up to that point
     • wheel
        • only 1 particle is full connected



     • circle/ring (k = 2)
        • every particle has 2 neighbours



     • lBest (k = 4)
        • every particle has 4 neighbours

13



           Neighbourhood topologies
     • Description of the Application Problem I


     • Description of the Application Problem II


     • Particle Swarm Optimization


     • Results and Conclusion




14



                        Structure of presentation
     • mean error over 30 runs

15



                      Results for the application problem I –
                      the whole week
     • week (problem I) is divided into days
     • PSO with 20 particles
     • mean error over 30 runs

16



                        Results for the application problem I –
                        individual days
     • PSO with 20 particles
     • mean error over 30 runs

17



                       Results for the application problem II
     • gBest topology is mostly superior to the other topologies
        • if the information is not available to all particles
          immediately, there is a danger of its being lost
        • with action nr. 2 all particles always remain in motion
          and have the chance to escape from a local optimum
     • gBest performs not always best on easier problems
        • it is much easier for the swarm to find "good" assignments
        • the influence of maximised information exchange throughout the
          swarm is reduced
        • the loss of "good" allocations can be compensated by other
          topologies for avoiding premature convergence to a local optimum
     • this suggests a relationship between the complexity of instances from
       an identical class of problems and the effectiveness of PSO
       neighbourhood topologies


     • small swarm sizes yield better results than large ones
     • make small changes in one iteration
18
     • PSO is easy to use (2 parameters: swarm size and action nr. 2 )

                         Conclusions
19



     Data sets and benchmarks
     1.   Chu S.C., Chen Y.T., Ho J.H. (2006) Timetable Scheduling Using Particle Swarm
          Optimization. In: Proceedings of ICICIC Beijing 2006, Vol. 3: 324-327
     2.   Brodersen O., Schumann M. (2007) Einsatz der Particle Swarm Optimization zur
          Optimierung universitärer Stundenpläne. Technical Report 05/2007, Univ. of Göttingen
     3.   Ernst A.T., Jiang H., Krishnamoorthy M., Owens B., Sier D. (2002) An Annotated Bibliography
          of Personnel Scheduling and Rostering. Annals of OR 127: 21-144
     4.   Garey M.R., Johnson D.S. (1979) Computers and Intractability. A Guide to the Theory of NP-
          Completeness
     5.   Kennedy J., Eberhart R.C., Shi Y. (2001) Swarm Intelligence. Kaufmann, San Francisco
     6.   Kragelund L., Kabel T. (1998) Employee Timetabling. An Empirical Study, Master's Thesis,
          Univ. of Aarhus
     7.   Tien J., Kamiyama A. (1982) On Manpower Scheduling Algorithms, SIAM 24(3): 275-287
     8.   Nissen V., Günther M. (2009) Staff Scheduling With Particle Swarm Optimisation and
          Evolution Strategies, In: Proceedings of EvoCOP 2009, LNCS, Vol. 5482: 228-239




20



                              References

				
DOCUMENT INFO