最佳分配以最大化输出

时间:2016-01-27 04:07:42

标签: optimization dynamic-programming maximum-profit-problem

因此,公司有n个可用项目和k个员工。每个项目都有一个与之相关的“小时数”。每个员工都有一个小时费率,如果他在项目上,则母公司获得报酬。并非所有员工都可以分配到任何项目,即每个员工都有他可以处理的n个项目的子集。我想将员工分配到项目中,以便我可以最大化公司从任务中获得的成果。每个项目只能分配给一名员工,每个员工只能处理一个项目。

我正在考虑使用动态编程,但无法达到可用于填充表格的递归。我是一个m×n矩阵,其中m是项目,n是员工。 Matrix [i] [j] =如果项目i被分配给员工j,则公司获得的金额。我坚持如何最大化这个。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

这看起来像是一个分配问题'这可以表述为线性规划问题。这是一个示例公式: enter image description here

第一部分是发明一些随机数据。变量x是二进制变量,通常意味着我们需要将模型解析为混合整数编程模型。但是这个赋值问题有一个属性,其中变量是自动整数,所以我们实际上可以解决为LP。 (我在这里解决了' RMIP'这意味着:删除x上的完整性条件)。

由于我不想在模型中包含不允许的x(i,k),因此配方有点复杂。

这是一个简单的LP,因此您应该能够快速解决大问题。