Давайте предположим, что дополнительная «точка» одинаково ценна, независимо от того, где вы ее положили.Например, если у вас есть два предприятия: креативное и продовольственное, мы предполагаем, что всегда лучше иметь в общей сложности 20 креативных и 3 продовольственных, чем иметь 11 в каждом.
В этом случае ваша проблемапример проблемы Назначение .Известно, что это «легко», поскольку ее можно решить за полиномиальное время, в частности, за время O (n ^ 3). Венгерский алгоритм является стандартным методом решения этой проблемы.Я не могу объяснить это лучше, чем страница википедии, которая довольно подробная, но если вы застряли там с чем-то, просто спросите.
Если у вас огромное количество людей и предприятий, так что этоАлгоритм неосуществим, я думаю, что проблема будет вполне поддается атаке с помощью приближенных методов, таких как имитация отжига или эволюционные алгоритмы .
Если мое первоначальное предположение неверноНапример, если было бы лучше иметь хотя бы одну хорошо укомплектованную компанию каждого типа), вы почти наверняка должны попробовать эти неточные методы.Сконцентрируйтесь на разработке целевой функции, которая отражает ценность любой заданной перестановки рабочих и бизнес-назначений.