专业信息系统项目管理师网站|服务平台|服务商(信息系统项目管理师学习QQ群:89253946,客服QQ:800184589)

软题库 学习课程
当前位置:信管网 >> 信息系统项目管理师 >> 综合知识 >> 文章内容
信息系统项目管理师计算题考点:动态规划-资源分配问题

信息系统项目管理师计算题考点:动态规划-资源分配问题

温馨提示:一些概念性的东西大家首次看搞不懂的话不必过多纠结,直接看试题解析,当然文字描述的效果是赶不上视频讲解的,建议大家多看视频讲解。

有总数量为a的某种资源,用于生产n件产品,若分配数量xi用于生产第i种产品的收益为gi(xi),(i=1,2,…,n),如何分配才能使总收益最大?

这种问题就是资源分配问题,准确来说是一维离散资源分配问题,因为信息系统项目管理师第4版官方教材上介绍的便是这种,所以一维连续资源分配问题、二维资源分配问题等就不介绍了,大家有兴趣的可以自己去查找相关资料看看。

该问题的数学模型可以表示为:


当收益函数gi(xi)均为线性函数时,该问题是一个线性规划问题,可以利用单纯形法进行求解;当收益函数为非线性函数时,问题变为一个非线性规划问题,如果我们采用非线性规划的方法求解将会非常麻烦所以根据此类问题的特点,我们可以把它看成一个多阶段决策问题,利用动态规划的方法求解。

对于此类资源分配问题我们用动态规划的方法求解时,通常把资源分配给一个或几个使用者的过程作为一个阶段,将问题中的xi作为决策变量,将累计的量或随递推过程变化的量选为状态变量。

解题思路:

1、划分阶段k:通常把资源分配给一个或几个使用者的过程作为一个阶段,比如第1阶段就是资源分配给产品1,第二阶段就是分配给产品1和2,以此类推。

2、正确选择状态变量Sk:状态变量Xk可选择k阶段初所拥有的资源量,即X是要在第k项到第n项活动间分配的资源量

3、确定决策变量及允许决策集合:决策变量uk常常选对活动k的资源投放量,决策变量的允许集合是:0≤uk≤Xk

4、确定状态转移方程:在选取上述状态变量和决策变量的情况下,状态转移方程是:Xk+1=Xk-uk,取投放资源时的效益为指标函数,则gk(uk)为阶段效益指标

5、确定阶段指标函数和最优指标函数,建立动态规划基本方程:设fk(xk)为k阶段到n阶段按最优分配方案获得的最大收益,则动态规划基本方程是:

按基本方程,逆序计算,就可求得这类资源分配问题的最优解。

当然只看上面的内容,可能有很多考生是看不懂的,我们结合信息系统项目管理师第4版官方教材中的例子来说明下:

【例题讲解】某公司现有400万元用于投资甲、乙、丙三个项目,限制投资以百万元计,已知甲、乙、丙三项投资的可能方案及相应增加的收益如表所示,试确定使总收益最大的投资方案。

表 项目投资收益值

(单位:万元)

项目

收益

投资0万元

投资100万元

投资200万元

投资300万元

投资400万元

0

300

600

1000

——

0

500

1000

1200

——

——              

400

800

1100

1500

表中“—”表示不允许该项投资,即丙项目不能不投资,甲、乙项目都不能投资400万元。

【解析】

第一步:将对甲、乙、丙项目投资看作按顺序排列的3个阶段,即:甲(K=1)、乙(K=2)、丙(K=3)

第二步:确定状态变量SK:第K阶段初还剩余的投资额,比如K=1时,表示给甲投资之前还剩余的投资额,给甲投资之前也就是还没开始投资,当然就还剩400万。也可以说是第k阶段到第n阶段的总投资额。当K=1时,第1阶段到第3阶段,即给甲、乙、丙的投资总额为400万。

如果还不理解,再举个例子:

比如说给甲(第1阶段,K=1)投资了100万,这时候投资额还剩余400-100=300万可以投资给乙和丙,也就是说在给乙投资之前(第2阶段K=2初,第1阶段K=2-1末)还剩300万(即:S2=300,也就是说给甲投资完后乙和丙的总投资额为300万元)。

第三步:确定决策变量及允许的决策集合:

决策变量Xk对第K个项目的投资额。这个很好理解,比如给甲投资了100万,就是XK=100

允许的决策集合:0≤Xk≤SK。这个就很好理解了,投出去的额度肯定要小于等于投之前还剩下的投资额,S1=400,在给甲投资之前还剩下400万,总不可能给甲投资(XK)超过400万吧。

第四步:确定状态转移方程:Sk+1=SK-Xk。搞清楚了前面几个概念,这个公式就很好理解了,比如给甲投资了100万,那么K=1时,即S2(给甲投资了之后,准备给乙投资之前还剩余的总投资额)=给甲投资之前剩余的投资额(S1)-给甲的投资额(XK)=400-100=300。

第五步:确定阶段指标函数和最优指标函数,建立动态规划基本方程:

设阶段指标函数为:Vk(SK,XK):Xk投资到第K个项目的收益。比如K=1时,VK就表示投资到甲的收益。

最优指标函数fk(Sk):Sk投资到第K个项目至第n个项目时的最大收益。比如K=1时就表示投资甲、乙、丙的最大收益,也就是该题目的要求。

动态规划基本方程:

采用逆推法求解:

第一步:求第3阶段,K=3时,即给丙投资时收益最大值为:

由f4(S4)到f3(S3)的递推过程:

根据题意S3可能为400、300、200、100,S3=X3≠0。我可以得到下表:

S3

X3

V3(S3,X3)

f4(S4)

V3(S3,X3)+f4(S4)

f3(S3)

最优决策X*3

100万元

100万元

400万元

0元

400万元

400万元

100万元

200万元

200万元

800万元

0元

800万元

800万元

200万元

300万元

300万元

1100万元

0元

1100万元

1100万元

300万元

400万元

400万元

1500万元

0元

1500万元

1500万元

400万元

第二步:求第2阶段,K=2时,即给乙投资时收益最大值为:


由f3(S3)到f2(S2)的递推过程:

根据题意S2可能为400、300、200、100万元,X2≠400,S3=S2-X2≠0

S2

X2

S3

V2(S2,X2)

f3(S3)

V2(S2,X2)+f3(S3)

f2(S2)

最优决策X*2

100万元

0万元

100万元

0元

400万元

400万元

400万元

0万元

200万元

0万元

200万元

0元

800万元

800万元

900万元

100万元

100万元

100万元

500万元

400万元

900万元

300万元

0万元

300万元

0元

1100万元

1100万元

1400万元

200万元

100万元

200万元

500万元

800万元

1300万元

200万元

100万元

1000万元

400万元

1400万元

400万元

0万元

400万元

0万元

1500万元

1500万元

1800万元

200万元

100万元

300万元

500万元

1100万元

1600万元

200万元

200万元

1000万元

800万元

1800万元

300万元

100万元

1200万元

400万元

1600万元

第三步:求第1阶段,K=1时,即给甲投资时收益最大值为:


由f2(S2)到f1(S1)的递推过程:

根据题意S1为400万元,X1≠400,S2=S1-X1≠0

S1

X1

S2

V1(S1,X1)

f2(S2)

V1(S1,X1)+f2(S2)

f1(S1)

最优决策X*1

400万元

0元

400万元

0元

1800万元

1800万元

1800万元

0元

100万元

300万元

300万元

1400万元

1700万元

200万元

200万元

600万元

900万元

1500万元

300万元

100万元

1000万元

400万元

1400万元

至此我们就得出答案了:

当S1=400万元时,最优决策得X*1=0元,于是S2=S1-X1=400-0=400万元,从而查得最优决策X*2=200万元,所以X3=400-200=200万元,所以给甲不投资,给乙投资200万元,给丙投资200万元时收益最大,收益为1800万元。

信管网订阅号

信管网视频号

信管网抖音号

温馨提示:因考试政策、内容不断变化与调整,信管网网站提供的以上信息仅供参考,如有异议,请以权威部门公布的内容为准!

信管网致力于为广大信管从业人员、爱好者、大学生提供专业、高质量的课程和服务,解决其考试证书、技能提升和就业的需求。

信管网软考课程由信管网依托10年专业软考教研倾力打造,教材和资料参编作者和资深讲师坐镇,通过深研历年考试出题规律与考试大纲,深挖核心知识与高频考点,为学员考试保驾护航。面授、直播&录播,多种班型灵活学习,满足不同学员考证需求,降低课程学习难度,使学习效果事半功倍。

相关内容

发表评论  查看完整评论  

推荐文章

精选

课程

提问

评论

收藏