任务分配问题

详述[编辑]

分为以下几类:

  • 线性任务分配问题:P二元组(a, b)集合,其中ab分别是集合AB中的元素C是某一函数,并满足特定约束条件,例如:A的每一个元素必须在P中出现一次,或者B的每一个元素必须在P中出现一次,或者以上二者都必须满足。线性任务分配问题的目标就是最大化或者最小化C(a, b)之和。

    该问题是线性的因为代价函数C()只取决于特定的二元组(a, b)而与其它的二元组没有任何关系。
  • 二次任务分配问题:给定n家工厂和n个库房。每个库房被分配给一家工厂。很显然有n!种不同的分配组合。每家工厂和它的库房间的代价函数被定义为二者间的距离和物流量的乘积。如何分配以使所有的代价总和最小?

这些问题都是组合优化的研究对象。

举例[编辑]

有一些员工要完成一些任务。各个员工完成不同任务所花费的时间都不同。每个员工只分配一项任务。每项任务只被分配给一个员工。怎样分配员工与任务以使所花费的时间最少?

婚配问题:有一些男人和一些女人,各位男人如果和某位女人结婚则其婚姻稳定程度具有不同的稳定数值。如何匹配可以使得所有配对的稳定值总和最大?也称婚姻匹配问题。

算法[编辑]

匈牙利算法是众多用于解决线性任务分配问题的算法之一,它可以在多项式时间内解决问题。 分配问题是运输问题的特例,运输问题最少成本流量问题的特例,而它们都是线性规划的特例。因此,单纯形法可以作为解决这些问题的通法。然而,针对每种特殊情形设计的专门算法可以提高解决问题的效率。如果问题的成本函数包含二次不等式,则称之为二次分配问题。

任务分配问题一般可以在多项式时间内转化成最大流量问题(Maximum Flow Problem)。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值