- 10
- 0
- 约8.11千字
- 约 7页
- 2018-10-24 发布于福建
- 举报
动态的规划解TSP问题
用动态规划方法编程求解下面的问题:
某推销员要从城市v1 出发,访问其它城市v2,v3,…,v6 各一次且仅一次,最后返回v1。D为各城市间的距离矩阵。问:该推销员应如何选择路线,才能使总的行程最短?
1、变量设定
阶段k:已遍历过k个结点,k=1,2…6,7。
K=1表示刚从V1出发,k=7表示已回到起点V1
状态变量Xk=(i,Sk):已遍历k个结点,当前位于i结点,还未遍历的结点集合为Sk。则X1=(1,{2,3,4,5,6}),X6=(i,Φ),X7=(1,Φ)
决策变量Uk=(i,j):已遍历k个结点,当前位于i结点,下一个结点选择j。
状态转移方程:Xk+1 = T(Xk,Uk) = (j,Sk-{j})
第k阶段的指标函数Vk = D[i,j]。
最优指标函数Fk(Xk) = Fk(i,Sk):已遍历k个结点,当前从i结点出发,访问Sk中的结点一次且仅一次,最后返回起点V1的最短距离。
则Fk(i,Sk) = min{ D[i,j] + Fk+1(j,Sk-{j}) } 1≤k≤6
F7(X7) = F7(1,Φ) = 0
2、分析:
(1)k=6时,F6(i,Φ) = min{D[i,1] + F7(X7)} = D[i,1] i=2,3,4,5,6
X6=(i,Φ)
U6=(i,j)
X7=(1,Φ)
V6=D[i,j]
F7(
原创力文档

文档评论(0)