Алгоритмы штатного учёта

Мы начинаем некоторые исследования и разработки для системы учета персонала, и я знаю, что есть некоторые предлагаемые алгоритмы, такие как меметический алгоритм и т. Д., Но я не могу найти никакой дополнительной информации в Интернете.

Кто-нибудь знает какие-нибудь исследовательские журналы или псевдокод, который лучше объясняет эти алгоритмы?

Спасибо деван

5 ответов

Вот полезный документ:

Меметические Алгоритмы для Ростеринга Медсестры (pdf)

Он содержит немного теории и псевдокода.

Задача планирования является NP-сложной и обычно решается с использованием генетических алгоритмов (GA).
Вы можете начать изучать GA из статьи Википедии

Вы также можете посмотреть на метод, называемый "имитация отжига". Как и генетические алгоритмы, здесь используется функция оценки для определения качества возможных решений, но генерация кандидатов, как правило, проще. Каждый тип алгоритма дает лучшие результаты в определенных обстоятельствах - из краткого опроса Google кажется, что генетический имеет преимущество, но отжиг будет быстрее осуществить.

Вот документ для сравнения (для другого домена, без планирования): http://www.ee.utulsa.edu/~tmanikas/Pubs/gasa-TR-96-101.pdf

Мы использовали имитацию отжига в большом приложении планирования, и оно работало хорошо.

Честно говоря, если численность персонала составляет менее 40, я бы порекомендовал дать визуальное представление реестра и позволить пользователю завершить график. Возможно, вы будете использовать алгоритм для создания расписания кандидатов, а затем позволить пользователю поиграть с ним. Вы все еще можете использовать функцию оценки, чтобы проверить работу пользователя и дать отзыв о том, насколько хорошо его решение.

Существует много много вопросов, которые необходимо учитывать при настройке расписания, поэтому совет Аку о генетических алгоритмах - лучший.

Вам нужна хорошая функция оценки для определения качества реестра для такого алгоритма, и вы можете и должны учитывать такие вещи, как следующие (но не ограничиваясь ими):

  • Вы решили проблему рабочей нагрузки с этим списком? (т.е. у вас всегда достаточно людей на работе?)
  • если нет, можете ли вы жить с последствиями? (для больниц вам, возможно, придется отложить обед на 15 минут на один день, чтобы было достаточно людей, или просто немного затянуть его вовремя)
  • Является ли реестр хорошим, учитывая такие вещи, как стабильность смены для каждого человека, его выходные дни, независимо от того, выходят ли они на выходные с некоторой регулярностью
  • законный список? принимая во внимание такие вещи, как местные правила, которые регулируют такие вещи, как, сколько времени должно проходить между одной сменой и другой (время простоя), сколько человек может работать в течение определенного интервала (день, неделя, месяц)

Я читаю газету с альгоистами этих парней некоторое время назад.

Или с помощью ИЛИ;)

Другие вопросы по тегам