python资源分配算法_多个knap的资源分配优化变异

我有J项目,运行时间超过T周,每个项目使用S周的资源量(基于预定义的矩阵)。我必须将这些项目分配到集群中,集群容量已知。此外,每个项目都属于某一子群G。在

这似乎是一个0-1多背包问题,对吧?然而,也有一些不同之处。所有的项目都必须被精确地分配到一个集群,一旦被分配,它就不能从中移动。这通常会导致背包(簇)的过度包装,违反“背包不能超过容量”的限制,只会产生不可行的解决方案。因此,它对目标有影响。在

我的目标是,按照优先顺序:

1)尽量减少超过集群容量的资源请求总数。通俗地说,尽量减少集群容量被破坏的次数。在

FHDwy.png

2)资源请求最大限度地跨集群分布。在

MHW5n.png

3)同一组中的项目最大限度地分散在集群中。在

r0smb.png

现在,对于我的问题:

我假设这是一个0-1多背包问题,对吗?我假设它是线性的,对吗?到目前为止,我在文献中找不到任何关于这个问题的确切变化的类似案例研究。在

我实现了一些初级代码,这些代码为项目到集群分配生成随机解决方案,并创建了一个Pareto-optimal front。下一步是实现一个简单的多目标优化算法。我甚至不知道如何开始,因为我在我的文学作品中没有遇到过类似的东西。我是Python的初学者,所以即使阅读PyGMO、DEAP甚至SciPy的库文档对我来说也太复杂了。有什么建议吗?在

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值