●●●●● ●●●● ●●0 ●●● ●●● 2 5 (2 6 9 3 7 3 2 3 7 10 12 611 5 5段图 2021/28
2021/2/8 1 2345 678 9 10 11 12 9732 4 2 2 7 11 11 8 1 4 563 5 6 425 V 1 V 2 V 3 V 4 V 5 5段图
●●● 多段图问题的多阶段决策过程:生成从s到t的最小成本路8。 径是在k-2个阶段(除s和t外)进行某种决策的过程:从s开始,·。。 第i次决策决定V(1sisk-2)中的哪个结点在从s到t的最短路径 上。 最优性原理对多段图问题成立 假设s,v2V3,k1,t是一条由s到t的最短路径。 ●初始状态:s ●初始决策:(s,v2),v2∈V2 ●初始决策产生的状态:V2 则,其余的决策: 35·k1 相对于v2将构成一个最优决策 序列——最优性原理成立 反证:若不然,设v2q3,…,q1t是一条由v2到t的更短的路 径,则s,v2q3,qk1t将是比s,V2V3y,vk1t更短的从s到t的 路径。与假设矛盾。 故,最优性原理成立
2021/2/8 多段图问题的多阶段决策过程:生成从s到t的最小成本路 径是在k-2个阶段(除s和t外)进行某种决策的过程:从s开始, 第i次决策决定Vi+1(1≤i≤k-2)中的哪个结点在从s到t的最短路径 上。 ➢最优性原理对多段图问题成立 假设s,v2 ,v3 ,…,vk-1 ,t是一条由s到t的最短路径。 ● 初始状态:s ● 初始决策:(s,v2 ),v2∈V2 ● 初始决策产生的状态:v2 则,其余的决策:v3 ,...,vk-1相对于v2将构成一个最优决策 序列——最优性原理成立。 反证:若不然,设v2 ,q3 ,…,qk-1 ,t是一条由v2到t的更短的路 径,则s, v2 ,q3 ,…,qk-1 ,t将是比s,v2 ,v3 ,…,vk-1 ,t更短的从s到t的 路径。与假设矛盾。 故,最优性原理成立
●●●●● ●●●● 例52[01背包问题]KNAP(jX) ●●0 ●●● ●●●● 目标函数:∑Px I<is ∑mx≤X k<i< 约束条件:x=0或,p>0.1>01≤1≤j 0/1背包问题:KNAP(1,n,M) 2021/2/8
2021/2/8 ⚫例5.2[0/1背包问题] KNAP(l,j,X) 目标函数: 约束条件: 0/1背包问题:KNAP(1,n,M) i j i i p x 1 x p w i j w x X i i i i j i i = 0 1, 0, 0,1 1 或
最优性原理对0M背包问题成立: ●●●●● ●●●● ●●0 设y1y2;yn是x12x2…,xn的0/值最优序列。 ●●● ●●●● 若y1=0,KNAP(2n,M是初始决策产生的状态。则y2,yn 相对于KNAP(2n,M)将构成一个最优序列。否则,y1y2,yn将 不是KNAP(1,n,M)的最优解 若y1=1,KNAP(2n,M-w是初始决策产生的状态。则 y2,yn相对于KNAP(2,n,MW1)将构成一个最优序列。 否则,设存在另一01序列z1z2…,zn,使得 2;≤M-W 且 11y < 2≤i<1 则序列y1z2…,zn将是一个对于KNAP(1n,M)具有更大效益 值的序列,与假设矛盾 故,最优性原理成立 2021/28
2021/2/8 最优性原理对0/1背包问题成立: 设y1 ,y2 ,…,yn是x1 ,x2 ,…,xn的0/1值最优序列。 若y1=0, KNAP(2,n,M)是初始决策产生的状态。则y2 ,…,yn 相对于KNAP(2,n,M)将构成一个最优序列。否则,y1 ,y2 ,…,yn将 不是KNAP(1,n,M)的最优解 若y1=1, KNAP(2,n,M-w1 )是初始决策产生的状态。则 y2 ,…,yn相对于KNAP(2,n,M-w1 )将构成一个最优序列。 否则,设存在另一0/1序列z1 ,z2 ,…,zn,使得 且 则序列y1 ,z2 ,…,zn将是一个对于KNAP(1,n,M)具有更大效益 值的序列,与假设矛盾 故,最优性原理成立 − i n wi zi M w 2 1 i n i n i i i i p z p y 2 2
● 4.动态规划模型的基本要素 ● 0● 个多阶段决策过程最优化问题的动态规划模型通常包含以下 要素: 1阶段 阶段(step)是对整个过程的自然划分。通常根据时间顺序 或空间特征来划分阶段,以便按阶段的次序解优化问题。阶段 变量一般用k=1,2,,n表示。 2021/28
2021/2/8 4. 动态规划模型的基本要素 一个多阶段决策过程最优化问题的动态规划模型通常包含以下 要素: 1) 阶段 阶段(step)是对整个过程的自然划分。通常根据时间顺序 或空间特征来划分阶段,以便按阶段的次序解优化问题。阶段 变量一般用k=1,2,..,n表示