Я изучаю оптимизацию и новичок в OpenOpt.
Я хотел бы представить процессы, каждый из которых имеет 3 индикатора использования ресурсов (ЦП, память и сеть), и я хотел бы назначить N процессов на группы/бины в соответствии со следующими ограничениями:
sum(cpu) within a group < 100
sum(mem) within a group < 100
sum(net) within a group < 100
Minimize(number of groups) or maximize the sum of each resource within a group.
В идеале я хотел бы иметь такой тип вывода:
VM 1 assigned to group 1
VM 2 assigned to group 1
VM 3 assigned to group 1
VM 4 assigned to group 2
VM 5 assigned to group 2
VM 6 assigned to group 3
... and so on
Вопрос: Как я могу это сделать? Если это невозможно сделать с помощью OpenOpt, есть ли какая-либо другая библиотека, которая могла бы помочь мне в этом?
Вот мой исходный код: https://github.com/vonpupp/mdbp/blob/master/ksp_2.py
Большое спасибо!