- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
第三节背包装载问题及旅行推销员问题
一、背包装载问题1.问题:有一人带一背包旅行,其可携带物品重量限度为M。现有编号为1,2,?,n的n种物品供他选择。
已知第i种物品每件重量为w ,价值携带数量x 的函数
i i
c(x
i i
)。问此人应如何选择携带物品,以使装货的价值最
大?2.动态规划求解方法
首先建立模型
设x 为第i 种物品的装入件数,则问题的数学模型
i
为
??maxf ??n
?
? i?1
c(x)
i i
????n wx ?M
?
?
i i
i?1
?x ?0,且为整数,i?1,2, ,n
? i
?
这是整数规划问题,若xi?1,即变量取值仅为0,1,则称为“0-1”背包问题。
现在我们用动态规划方法来求解背包问题。
1按物品的n个种类分为n个阶段;
2状态变量s :表示用于装第1种至第k 种物品的
k
总重量;
3决策变量x
k
:表示装入第k 种物品的件数;
4状态转移方程:s
5允许决策集合:
?s
k?1 k
x w
k k
? s ?
D (s
k k
s
)??x
? k
0?x
k
ws
w
?[ k ]?
??
?
k
w式中的[ k
w
k
]表示不超过 k
k
的最大整数;
6最优指标函数f (s ):表示总重量不超过s 时,
6
k k k
背包中可装入第1种至第k 种物品的最大价值,即
??f (s )?
?
? k k
max ? c
ki
k
k
(x)
i
?wx?s
i?1
? i?1ii k
??x ?0,且为整数,i?1,2, ,k
?
?
i
7递推关系:
?f(s)? max ?c(x
)?f
(s?wx
)?,2?k?n
?k k
x?0,1,?,?s
/w? k k
k?1 k k k
? 1 k k
?f(s)? max c(x)
?1 1
x?0,1,?,?s/w?1 1
1 1 1
要求:f (M)
n
11求解过程:逐步计算f(s
1
1
),f
2
(s ), ,f (s )
?及2 n n
?
及
x (s ),最后得到f (M)和相应的最优策略。
k k n
例1 用动态规划方法求解
?maxf ?4x
5x
6x
?
?3x
4x
1
5x
2 3
?10
? 1 2 3
?x ?0,且为整数,i?1,2,3
?
i
解:n?3,M?10,问题就是求f
3
(10),递推关系为:
f (10)? max
3 ?10?
?6x
3
? f (10?5x)?
2 3
x3?0,1,?,??5??
?max?0? f
2
(10),6? f
2
(5),12? f
2
(0)?
因此,求f
3
(10),需先计算f
? 2
(10),f
2
(5),f
(0)。
2?
f (10)? max 5x
2 ?10? 2
?f (10?4x )
1 2
x2?0,1,?,??4??
?max?0?f
?1
(10),5?f
1
(6),10?f
?1
(2)?
f (5)?
2
max 5x
2 ?4?2x?0,1,?,
2 ?4?
2
? ?
? f (5?4x )
1 2
?max?0? f
1
(5),5? f
1
(1)?
f (0)?
2
max ?5x
2 ?4?2x?0,1,?,
2 ?4?
2
? ?
? f(0?4x )?
1 2
? f(0)
1
为计算f (10),f (5),f (0),又需先计算:
2 2 2
f(10),f(6),f(5),f(2),f(1),f(0)
1 1 1 1 1 1
对f 我们有:
11
1
1f(s)? max (4x
1
)?4??s?
x?0,1, ,?s?
1 ??3??
??3??
对应的最优决策为x
?s?
1???3??,因此得到:
1
?
从而有
f(10)?4?3?12 x ?3
1 1
f(6)?4?2?8 x ?2
1 1
f(5)?4?1?4 x ?1
1 1
f(2)?4?0?0 x ?0
1 1
f(1)?4
文档评论(0)