河内塔(又称汉诺塔)问题,就是在一块木板上有三个立柱,在柱1上放着三个圆盘,小的在上面,大的在下面(初始状态)。让被试将在柱1上的三个圆盘移到柱3上面(目标状态)。条件是:每次只能移动任何一个柱子上面的一个圆盘,但大的圆盘不能放在小的圆盘上。通用问题解决者的解决过程即是手段—目的分析的策略。
基本介绍
- 中文名:河内塔问题
- 外文名:Tower of Hanoi preblem
- 类属:问题解决
- 策略:手段—目的分析
历史传说
一位法国数学家曾编写过一个印度的古老传说:在世界中心贝拿勒斯(在印度北部)的圣庙里,一块黄铜板上插着三根宝石针。印度教的主神梵天在创造世界的时候,在其中一根针上从下到上地穿好了由大到小的64片金片,这就是所谓的汉诺塔。不论白天黑夜,总有一个僧侣在按照下面的法则移动这些金片:一次只移动一片,不管在哪根针上,小片必须在大片上面。僧侣们预言,当所有的金片都从梵天穿好的那根针上移到另外一根针上时,世界就将在一声霹雳中消灭,而梵塔、庙宇和众生也都将同归于尽。
不管这个传说的可信度有多大,如果考虑一下把64片金片,由一根针上移到另一根针上,并且始终保持上小下大的顺序。这需要多少次移动呢?这里需要递归的方法。假设有n片,移动次数是f(n).显然f⑴=1,f⑵=3,f⑶=7,且f(k+1)=2*f(k)+1。此后不难证明f(n)=2^n-1。n=64时,
f(64)= 2^64-1=18446744073709551615
假如每秒钟一次,共需多长时间呢?一个平年365天有 31536000 秒,闰年366天有31622400秒,平均每年31556952秒,计算一下,
18446744073709551615/31556952=584554049253.855年
这表明移完这些金片需要5845亿年以上,而地球存在不过45亿年,太阳系的预期寿命据说也就是数百亿年。真的过了5845亿年,不说太阳系和银河系,至少地球上的一切生命,连同梵塔、庙宇等,都早已经灰飞烟灭。
基本介绍
汉诺塔是由三根桿子A,B,C组成的。A桿上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C桿:每次只能移动一个圆盘;大盘不能叠在小盘上面。提示:可将圆盘临时置于B桿,也可将从A桿移出的圆盘重新移回A桿,但都必须尊循上述两条规则。问:如何移?最少要移动多少次?汉诺塔是根据一个传说形成的一个问题:
有三根桿子A,B,C。A桿上有N个(N>1)穿孔圆盘,盘的尺寸由下到上依次变小。要求按下列规则将所有圆盘移至C桿:
每次只能移动一个圆盘;
大盘不能叠在小盘上面。
提示:可将圆盘临时置于B桿,也可将从A桿移出的圆盘重新移回A桿,但都必须尊循上述两条规则。
问:如何移?最少要移动多少次?
相似问题
和汉诺塔故事相似的,还有另外一个印度传说:舍罕王打算奖赏西洋棋的发明人──宰相西萨·班·达依尔。国王问他想要什幺,他对国王说:“陛下,请您在这张棋盘的第1个小格里赏给我一粒麦子,在第2个小格里给2粒,第3个小格给4粒,以后每一小格都比前一小格加一倍。请您把这样摆满棋盘上所有64格的麦粒,都赏给您的僕人吧!”国王觉得这个要求太容易满足了,就命令给他这些麦粒。当人们把一袋一袋的麦子搬来开始计数时,国王才发现:就是把全印度甚至全世界的麦粒全拿来,也满足不了那位宰相的要求。
那幺,宰相要求得到的麦粒到底有多少呢?总数为
1+2^1+2^2 + … +2^63
和移完汉诺塔的次数一样。我们已经知道这个数字有多幺大了。人们估计,全世界两千年也难以生产这幺多麦子!
心理学知识
美国心理学家、人工智慧专家西蒙(Herbert A.Simon,1916~2001)和纽厄尔(Alan Newell ,1927—1992)把心理学结合起来,开创了人工智慧的研究,并致力于人类思维的计算机模型。20世纪50年代,他们首先设计了计算机模拟下象棋的程式,这一工作在当时被认为是开创性的。西蒙和纽厄尔把出声思考用于问题解决的研究,并提出了问题行为图的概念。问题行为图使人们直接地看到在问题解决过程中所进行的各种操作的序列。他们认为,认知系统是一种模组化的结构,他由许多模组组成,每个模组负责解决不同类型的问题,不同功能的模组相互结合,採用和解决简单问题一样的解题策略,就能解决複杂的问题。通过问题解决者(General problem solver,GPS)就是他们对河内塔问题解决的计算机模拟。
“通过问题解决者”是世界上第一个问题解决的人工智慧程式。如今,人工智慧以及取得了长足的进步,并在需要速度、大容量记忆和较长时间的智力活中动情景中充分体现出其价值,在某些任务中比人类做的更好。