2008-10-16 14 views
9

Rozpoczynamy pracę z R & D dla systemu rekrutacji personelu i wiem, że istnieją pewne sugerowane algorytmy, takie jak algorytm memetyczny itp., Ale nie mogę znaleźć żadnych dodatkowych informacji w Internecie.Algorytmy rozkładania personelu

Czy ktoś zna jakieś czasopisma naukowe lub pseudokodowe, które lepiej wyjaśniają te algorytmy?

Dzięki Devan

Odpowiedz

1

Istnieje wiele wiele wiele kwestii do rozważenia przy ustalaniu harmonogramu dyżurów, więc końcówka aku chodzi o algorytmach genetycznych jest najlepszy.

Potrzebny jest dobry funkcji oceny w celu określenia jakości dyżurów dla takiego algorytmu, a można i należy rozważyć takie rzeczy jak następujące (ale nie tylko):

  • ty rozwiązany problem z obciążeniem w tym zestawie? (Czy masz wystarczająco dużo ludzi w pracy przez cały czas?)
  • jeśli nie, czy możesz żyć z konsekwencjami? (w przypadku szpitali może być konieczne odłożenie przerwy na lunch o 15 minut dziennie, aby mieć wystarczającą liczbę osób do jej udostępnienia lub po prostu nieznacznie ją przeciągnąć)
  • to zestaw dobry jeden, biorąc pod uwagę rzeczy takie jak stabilność zmiany dla każdej osoby, ich dni wolne, czy mają regularne weekendy z pewną regularnością
  • jest lista prawna? biorąc pod uwagę lokalne przepisy, które regulują takie kwestie, jak czas przejścia między jedną zmianą a drugą (przestój), ile może pracować każda osoba w danym przedziale (dzień, tydzień, miesiąc).
6

może również przyjrzeć się technice zwanej "symulowanym wyżarzaniem". Podobnie jak w przypadku algorytmów genetycznych, wykorzystuje to funkcję oceny w celu określenia jakości kandydujących rozwiązań - ale generowanie kandydatów wydaje się być prostsze. Każdy rodzaj algorytmu daje lepsze wyniki w pewnych okolicznościach - z krótkiej ankiety Google wynika, że ​​genetyczne ma przewagę, ale wyżarzanie będzie szybsze do wdrożenia.

Oto papier porównanie (na innej domenie, nie szeregowania): http://www.ee.utulsa.edu/~tmanikas/Pubs/gasa-TR-96-101.pdf

Użyliśmy symulowanego wyżarzania w dużej aplikacji planowania i to nie działa dobrze.

Szczerze mówiąc, jeśli liczba pracowników jest mniejsza niż około 40, polecam dać wizualną reprezentację planu i pozwolić użytkownikowi sfinalizować harmonogram. Być może użyjesz algorytmu do przygotowania harmonogramu kandydatów na początek, a następnie pozwól mu się z nim bawić. Nadal można korzystać z funkcji oceny, aby sprawdzić pracę użytkownika i przekazać informację zwrotną na temat tego, jak dobre jest jego rozwiązanie.

-1

lub za pomocą OR;)

+0

-1 Chociaż problemy z algorytmami schdulingowymi byłyby istotne dla badań operacyjnych, samo wspomnienie o OR bez opracowania nie jest odpowiedzią. To tak, jakby powiedzieć Dlaczego nie używać AI, matematyki lub alorytów. – tovare

+0

Punkt wzięty, czuję się zawstydzony. Ale do mojej obrony OR jest krótkowzroczny i krótkie pytanie bez żadnych ograniczeń dotyczących domeny problemu nie jest łatwe do udzielenia wyczerpującej odpowiedzi. – Jonke

+0

Tak, za karę trzeba znaleźć dobry przykładowy kod GA i opublikować link ;-) – tovare