贪心法及相关问题

1.基本策略

一步一步地构建问题的最优解决方案,其中每一步只需考虑眼前的最佳选择(局部判断规则),即通过局部最优到达全局最优。

2.TSP问题

  • 最近邻点策略:从任意城市出发,每次在没有到过的城市中选择最近的一个,知道经过了所有的城市,最后回到出发城市。
  • 最短链接策略:每次在整个图的范围内选择最短边加入到解集合中,但是要保证加入解集合中的边最终形成一个哈密顿回路。因此,当从剩余边集E’中选择一条边(u,v)加入解集合S中,应满足以下条件:
    1.边(u,v)是边集E‘中代价最小的边;
    2.边(u,v)加入解集合S后,S中不产生回路;
    3.边(u,v)加入解集合S后,S中不产生分枝。

3.图着色问题

选择一种颜色,以任意顶点作为开始顶点,依次考察图中的未被着色的每个顶点,先用颜色1为尽可能多的顶点着色(不违背领接点颜色不相同的原则),当没有顶点能以这种颜色着色时,选择颜色2和一个未被着色的顶点,用颜色2为尽可能多的顶点着色,以此类推。

4.0/1背包问题

  • 选择价值最大的物品
  • 选择重量最轻的物品
  • 选择单位重量价值最大的物品(通常采用这种)

5.多机调度问题

在这里插入图片描述
最长处理时间作业优先,即把处理时间最长的作业分配给最先空闲的机器,这样可以保证处理时间长的作业优先处理,从而在整体上获得尽可能短的处理时间。
例:设7个独立作业{1,2,3,4,5,6,7}由3台机器{M1,M2,M3}加工处理,各作业所需的处理时间分别为{2,14,4,16,6,5,3}。贪心法得到的作业调度如下:
在这里插入图片描述

6.Interval Scheduling(区间调度)

问题描述:有n项工作,每项工作分别在si时间开始,在ti时间结束。对于每项工作,你都可以选择参与与否。如果选择了参与,那么自始至终都必须全程参与。此外,参与工作的时间段不能重叠。目标是参与尽可能多的工作。
在这里插入图片描述

有四种策略,只有最后一种合理。

  • 选取开始时间最早
    反例:
    在这里插入图片描述

  • 选择所用时间最短
    反例:
    在这里插入图片描述

  • 选取与其他工作重叠最少的工作
    反例:
    在这里插入图片描述

  • 选取结束时间最早的工作(无反例)

7.Interval Partitioning(区间划分)

在这里插入图片描述
按讲座开始的时间从早到晚进行排序,若不兼容则安排到新的一间教室。

8.Scheduling to Minimizing Lateness(最小延迟调度)

问题描述:给定每个任务需要ti时间完成,期望在时刻di之前完成。要求延迟最少。
有三种策略,只有最后一种合理。

  • 按ti从小到大进行安排
12
ti110
di10010
  • 按di-ti从小到大进行安排
12
ti110
di210
  • 按di从小到大进行安排(无反例)
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值