从汉诺塔问题看递推关系在实际问题中的应用
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
从汉诺塔问题看递推关系在实际问题中的应用
姓名:孙瑞 学号:200640501218 指导老师:马玉田
摘要:本文主要介绍了递推关系在实际中的应用,对几个实际问题的分析,让我们清楚的看到递推关系在
解决实际问的强大作用.
关键词:数列 递推关系 汉诺塔 九连环 蛛网模型
引言: 递推关系在实际问题中有着广泛的应用.由连续变量可以建立微分方程模型,离
散变量可以建立递推关系模型. 经过分析可知,常、偏微分方程除非在极其特殊的情况下,否则一般不存在解析解,所以讨论起来非常麻烦,比如最基本的平衡点的稳定性,往往只能得到局部稳定性,全局稳定性很难得到,而递推关系模型可以达到全局的效果,另外,由递推关系获得的结果又可以进一步进行优化分析、满意度分析、分类分析、相关分析等等。而在实际中,连续变量可以用离散变量来近似和逼近,从而微分方程模型就可以近似于某个递推关系模型。递推关系模型有着非常广泛的实际应用背景,我们的前人建立了许多著名的模型,如生态模型,传染病模型,经济模型(如蛛网模型),人口控制模型(如著名的马尔萨斯人口控制模型)等等.
定义:设012,,,,n a a a a 是一个数列,把该数列中n a 与它的前面几个
(01)i a i n ≤≤-关联起来构成的方程,称为一个递推关系,即(,,)n j k a f a a =
(0,1)j k n ≤≤-.
下面让我们看看递推关系在汉诺塔问题中的应用.
引例:汉诺塔(又称河内塔)问题是印度的一个古老的传说。开天辟地的神勃拉玛在一个庙里留下了三根金刚石的棒,第一根上面套着64个圆的金片,最大的一个在底下,其余一个比一个小,依次叠上去,庙里的众僧不倦地把它们一个个地从这根棒搬到另一根棒上,规定可利用中间的一根棒作为帮助,但每次只能搬一个,而且大的不能放在小的上面。面对庞大的数字(移动圆片的次数)18446744073709551615,看来,众僧们耗尽毕生精力也不可能完成金片的移动
汉诺塔问题:它是由三根固定的柱子ABC 和不同尺寸的n 个圆盘组成.开始时,这些个大小不同的圆盘依其半径大小依次套在A 柱上,使大圆盘在底下.游戏的规则是:每次的圆盘从一根柱子移到另一根柱子上,但是不允许这个圆盘放在比它小的圆盘上面.游戏的目标是
把所有的圆盘从按照大小的次序从A 柱都移到C 根柱子上,可以利用中间的B 柱子,在移动过程中药始终将最大的圆盘放在最下面
.
令n H 表示解n 个圆盘的汉诺塔游戏所需要的移动次数,建立关于序列{n H }递推关系 解 开始时n 个圆盘在A 柱上,按照游戏规则用1n H -次移动将上面的1n -个圆盘移到C 柱子上,在这些移动中最大圆盘不动.然后,用1次移动将最大圆盘移到B 柱子上.再用1n H -次移动将C 柱子上的1n -个圆盘移到B 柱子上并且放到最大圆盘上面,于是,得到所求递推关系.
121n n H H -=+
和初始条件是11H =.因为根据游戏规则,一个圆盘可用1次移动从A 柱子放到B 柱子上.
为求解上述递推关系,对该问题首先用构造方法导出其解公式如下:
12322331
2
3
11221
2(21)12(21)2122212
2
2
21
222121
n n n n n n n n n n n H H H H H H ---------=+=++=++=+++=+++++=++++=-
其中11H =, 21n
n H =-确是递推关系121n n H H -=+的解.
现在我们再回头看看古印度的那个问题,勃拉玛要求移动64个圆盘,带入我们所求的关系式即是64
642118446744073709551615H =-=,面对这个天文数字,庙中僧侣要想移动这64个圆盘几乎是不可能的.
从汉诺塔问题我们看到递推关系在解决实际问题中的巨大作用,,它在众多领域里有着
广泛的应用,由此我们看看由汉诺塔问题所引出的一些实际问题.
(1)九连环方程问题
九连环是中国古代在民间流传的一种玩具,它是由9个环,9个直杆,一个条形框柄和一个平板组成,.每一个环都有一根杆相连,又顺序穿入后一个环,再连在条形横板上,从而构成一个整体,与其相适应,大小相当的一个条形框柄,可以将9个环穿套在上下框柄.只有它前面的换单独在框柄上面.只是穿套不可能一次性完成,有着严格的规律性和特别的要求.第一个环可以独立,自由地上或下条形框柄,而其后的各环要上或下框柄都受其前面的连杆和环的限制,任何一个环要独立,自由地上下框柄只要它前面的换单独在框柄上就能做到.现在可以假设前n 个环已经全部上到框柄上,需要移动环的次数为S (1,2,9)n n = .这样,将前
1n -个环都上到框柄上时,需要移动1S n -次,反之将前2n -个环下到框柄下.移动次数和之
前的情形一样为2S n -,此时只有第1n -个环单独在框柄上,可将第n 个环上到框柄上,移动一次,再将前2n -环上到框柄上,移动次数为2S n -,至此,前面n 个环都上到框柄上,总的移动次数为12212S S 1S S 2S 1n n n n n -----+++=++,按假设,它等于S n ,所以有
12S S 2S 1n n n --=++,补充定义0S 0=显然1S 1=(1,2,9)n = 这就是九连环的基本方程.
利用它可以计算出2S 2=,并递推地求出S n .直接求解可将两边都加上和减去1S 1n -+,得:
211S S 12(S S 1)2n n n n n ---++=++=和12S -S 12S n n n ---=,
求平均得: 1
2S S 2n n n --=+,
递推下去,有 +1+232
4S S 2S S 2i i i n n n ---=+++=+ ,
累加得1
11S S (2
2)3
i n i n ++=+-,其中i 与n 同奇偶性,并且1i =或2.
为求S i 和+12i ,可设S cos i u v n π+=,则有
1
21u v u v +=-⎧⎨
+=⎩
, 解方程组,得 2,3u v ==, 所以1
S (3cos )2
i n π=
+