美文网首页数据结构和算法分析
多机调度的最优子结构证明

多机调度的最优子结构证明

作者: 多了去的YangXuLei | 来源:发表于2017-04-01 09:09 被阅读44次

1、问题描述:

n个作业{1,2,…,n}要在由2台机器M1和M2组成的流水线上完成加工。每个作业加工的顺序都是先在M1上加工,然后在M2上加工。M1和M2加工作业i所需的时间分别为ai和bi。流水作业调度问题要求确定这n个作业的最优加工顺序,使得从第一个作业在机器M1上开始加工,到最后一个作业在机器M2上加工完成所需的时间最少。

2、问题分析

直观上,一个最优调度应使机器M1没有空闲时间,且机器M2的空闲时间最少。在一般情况下,机器M2上会有机器空闲和作业积压2种情况。设全部作业的集合为N={1,2,…,n}。S是N的作业子集。在一般情况下,机器M1开始加工S中作业时,机器M2还在加工其他作业,要等时间t后才可利用。

将这种情况下完成S中作业所需的最短时间记为T(S,t)。流水作业调度问题的最优值为T(N,0)。
设π是所给n个流水作业的一个最优调度,它所需的加工时间为 aπ(1)+T’。其中T’是在机器M2的等待时间为bπ(1)时,安排作业π(2),…,π(n)所需的时间。记S=N-{π(1)},则有T’=T(S,bπ(1))。

证明:事实上,由T的定义知T’>=T(S,bπ(1))。若T’>T(S,bπ(1)),设π’是作业集S在机器M2的等待时间为bπ(1)情况下的一个最优调度。则π(1),π'(2),…,π'(n)是N的一个调度,且该调度所需的时间为aπ(1)+T(S,bπ(1))<aπ(1)+T’。这与π是N的最优调度矛盾。故T’<=T(S,bπ(1))。从而T’=T(S,bπ(1))。这就证明了流水作业调度问题具有最优子结构的性质。

相关文章

  • 多机调度的最优子结构证明

    1、问题描述: n个作业{1,2,…,n}要在由2台机器M1和M2组成的流水线上完成加工。每个作业加工的顺序都是先...

  • 动态规划

    动态规划特性 重叠子问题子问题可能被多次用到,多次计算 最优子结构最优子结构性质是指问题的最优解包含其子问题的最优...

  • 算法:动态规划

    性质:用于求解最优化问题。最优子结构:当前问题的最优解包含子问题的最优解。重叠子问题:再求取当前最优解的过程中,存...

  • 动态规划算法详解

    动态规划的介绍 动态规划一般也只能应用于有最优子结构的问题。最优子结构的意思是局部最优解能决定全局最优解(对有些问...

  • 动态规划

    动态规划前提: 1、最优化原理:最优解的子问题也是最优,具有最优子结构。 2、无后效性:只与当前状态有关。 3、有...

  • 动态规划解决最长回文子串问题

    先复习一下动态规划的三个特征: 最优子结构:就是问题的最优解包含子问题的最优解,也就是可以通过子问题的最优解,推导...

  • 动态规划(一)

    动态规划其实和递归或者分治没有根本上的区别(关键是看有无最优子结构)共性:找到重复子问题差异性:最优子结构、中途可...

  • 0x02 动态规划

    采用动态规划发求解的问题必须具有两个性质:最优子结构和子问题重叠。动态规划算法的基本要素(1)最优子结构:当问题的...

  • 动态规划

    动态规划方法通常用来求解最优化问题。具备两个要素:1.最优子结构:一个问题的最优解包含其子问题的最优解。求解一个子...

  • LeetCode笔记--动态规划

    动态规划 最优子结构:问题的最优解由相关子问题的最优解组合而成,而这些子问题可以独立求解。即一个问题的最优解包含其...

网友评论

    本文标题:多机调度的最优子结构证明

    本文链接:https://www.haomeiwen.com/subject/cvzbottx.html