n流水线m装配站调度问题

本文介绍了如何解决n流水线m装配站的调度问题,通过动态规划方法,利用无后效性和最优子结构性质,得出状态转移方程,找到使总时间最小的流水线序列。
摘要由CSDN通过智能技术生成

题目:http://biancheng.love/contest/6/problem/F/index
解题思路:
首先需要明白的一点就是由于在同一个流水线的各个装配站之间进行转移是不需要消耗时间的,故最终经过装配站的顺序不影响最终结果。也就是说无论以什么样的编号顺序去经过各装配站,最终得到的最小时间都是一样的。所以我们可以任选一个装配站编号顺序去访问,这里不妨就取编号为从1到m,即按编号1到n的顺序去经过各装配站,但每次所在的流水线是不定的。也就是说我们只需找出一个流水线序列,使得最终花费时间最少即可。
方法:动态规划
我们定义状态A[i][j]表示当前位于i流水线的第j个装配站所花费的最小时间。则A[i][j]可以由A[k][j-1]决定(k=1,2,3……n),而与A[k][j-1]是怎样得到的没有关系,即所谓的满足无后效性。而若要得到A[i][j]的最小值,必然应使A[k]j-1最小,即满足最优子结构性质。满足了这两个条件就可以应用动态规划的方法来解决了。不难得到以下的状态转移方程:
**A[i][j]=min{ A[k][j-1]+t[k][i] }+p[i][j] (k=1,2,3……n)
A[i][1]=p[i][1]**
含义:按照我们规定的顺序,要想到达编号为j的装配站,需要先经过编号为j-1的装配站,则到达装配站j所需最小时间即为所有到达j-1装配站的时间再加上流水线的转换时间中的最小值。
有了状态转移方程问题就很简单了。


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值