Я собираюсь начать с того, что я плохо разбираюсь в Minizinc или программировании ограничений, я смотрел учебные пособия по Excel на YouTube, которые я могу понять, но я не вижу, как я могу перевести свою проблему в решение, способное решить Excel , ни Minizinc, если на то пошло.
Чтобы объяснить проблему, у меня есть то, что я считаю проблемой многоуровневого рюкзака, но могу ошибаться. Вот что я считаю ограничениями
There are 25 "admin" who supervise over 200 "staff".
Each admin has a unique workload allocation.
Each admin also has to moderate staff
that is both equal to or greater than their supervisorial allocation
and has the ability to rate their moderation preference
Admin cannot supervise and moderate the same staff member.
Every staff member has to have both a supervisor and a moderator.
Чтобы понять проблему, я представил ее в виде таблицы
табличное представление набора образцов данных
- a # = админ
- s # = персонал
- b = руководитель
- v # = предпочтение модерации (ниже = лучше)
Взяв прилагаемый пример, мы можем видеть
admin1 является руководителем для Staff1, 13 и 17. Они вызвались умеренно staff2, 20, 10 и 23 в указанном порядке (предпочтение) .
Игнорируя все вышеперечисленное, что является моей разбивкой проблемы, вы можете упростить проблему следующим образом
- в каждой строке количество модераторов равно или больше руководителей,
- и в каждом столбце есть как уникальный руководитель, так и модератор (где учитывается возможный приоритет ниже = лучше).
Надеюсь, я попытался достаточно хорошо объяснить проблему, и мой анализ не слишком запутан, любые указания на то, как я могу решить эту проблему, чтобы ее можно было масштабировать до гораздо большего набора данных.
Спасибо.