練習(xí)還有另外一個(gè)很重要的作用,就是增加領(lǐng)域知識(shí)(關(guān)于知識(shí)在問題解決中的作用,前面已經(jīng)提到過)。我們看到很多人,拿到一道題目立即腦子里就反應(yīng)出解法,這個(gè)反應(yīng)快到他自己都不能意識(shí)到背后有什么邏輯。這是因?yàn)榧扔械闹R(shí)(我們常說的“無他,實(shí)在是題做得太多了”)起到了極大的作用,通過對(duì)題目中幾個(gè)關(guān)鍵元素或結(jié)構(gòu)的感知,大腦中的相關(guān)知識(shí)迅速被自動(dòng)提取出來。而對(duì)于知道但不熟悉相應(yīng)知識(shí)(譬如很早我們就知道歸納法,但是很久以后我們才真正能夠做到面對(duì)任何一道可能用歸納法的題目就立即能夠想到運(yùn)用歸納法),或者干脆就不知道該知識(shí)的人來說,就需要通過啟發(fā)法來輔助聯(lián)想或探索了。后者可以一定程度上代償對(duì)知識(shí)的不夠熟悉,但在一些時(shí)候知識(shí)的缺失則是致命的(參見上面第2點(diǎn))。不過要注意的是,那種看到題目直接反應(yīng)出答案的或許也不是純粹的好事,因?yàn)檫@樣的解題過程嚴(yán)重依賴于既有知識(shí),尤其是做過的類似的題目,其思維過程絕大部分運(yùn)用的是聯(lián)想或類比,而非演繹或歸納。更重要的是,聯(lián)想也分兩種,被動(dòng)聯(lián)想和策略性聯(lián)想(參考《Searching For Memory》),這里用的卻是被動(dòng)聯(lián)想。所以,能直接反應(yīng)出答案并不代表遇到真正新穎的題目的時(shí)候的解決能力,后者由于不依賴于既有領(lǐng)域知識(shí),就真正需要看一個(gè)人的思維能力和習(xí)慣究竟如何了。
6.啟發(fā)法的局限性。首先肯定的是,啟發(fā)法在一定(也許很大)程度上是可以代償知識(shí)的不足的(這里的知識(shí)主要是指大腦中的“聯(lián)系”,下面還會(huì)提到另一種知識(shí),即hard knowledge)。譬如,一道題目,別人直接就能通過類比聯(lián)想到某道解過的題目,并直接使用了其中的一個(gè)關(guān)鍵的性質(zhì)把題目給解出來了。你并沒有做過那道題目,這導(dǎo)致兩種可能的結(jié)果:一,你就是不知道那個(gè)性質(zhì)。二,你雖然“知道”那個(gè)性質(zhì),但并沒有在以前的解題經(jīng)歷中將那個(gè)性質(zhì)跟你手頭的這個(gè)問題中的“線索”聯(lián)系起來,所以你還是“想不到”。后一種可以稱為soft knowledge,即你“知道”,但就是聯(lián)想(聯(lián)系)不起來。所謂不能活學(xué)活用,某些時(shí)候就是這種情況,即書本上提供什么樣的知識(shí)聯(lián)系,腦子里也記住什么,而沒有事后更廣泛地去探索知識(shí)之間的本質(zhì)聯(lián)系(總結(jié)的作用)。前一種則可以稱為hard knowledge,即你就是不知道,它不在你的腦子里。
而啟發(fā)式方法在兩個(gè)層面上起作用:
1)輔助聯(lián)想起soft knowledge。譬如,特例法是一種啟發(fā)式思考方法,它通過引入一個(gè)簡單的特例,特例中往往蘊(yùn)含有更多的“線索”,通過這些線索,有可能就會(huì)激發(fā)起對(duì)既有的知識(shí)的聯(lián)想。另外一種強(qiáng)大的輔助聯(lián)想辦法就是對(duì)題目進(jìn)行變形,變形之后就產(chǎn)生了新的視覺和語意線索,比如式子的對(duì)稱性、從直角坐標(biāo)到極坐標(biāo)從而引發(fā)對(duì)后者的知識(shí)的聯(lián)想,等等。大量的啟發(fā)式方法實(shí)際上的作用就是輔助聯(lián)想,通過對(duì)題目中的線索的發(fā)掘,激起大腦中已知相關(guān)知識(shí)的浮現(xiàn)。在這個(gè)意義上,相對(duì)于那些能夠直接聯(lián)想到某個(gè)性質(zhì)的人,那些不知道但可以通過啟發(fā)式思維聯(lián)想到的,啟發(fā)式思維就提供了一種“曲徑通幽”的策略性聯(lián)想。還是以經(jīng)典的例子來說:磚頭的用途。有人立即能夠直接聯(lián)想到“敲人”。有人也許不能。然而啟發(fā)式聯(lián)想策略“抽象”就能夠幫助后者也能夠聯(lián)想到“敲人”,因?yàn)椤俺橄蟆辈呗詥l(fā)人去考慮磚頭的各個(gè)性質(zhì)維度,如“質(zhì)地”,“形狀”,當(dāng)你考察到“質(zhì)地堅(jiān)硬”,“棱角”,離“敲人”的功能還會(huì)遠(yuǎn)么?本質(zhì)上,能夠直接聯(lián)想到“敲人”功能的人是因?yàn)榇竽X中從磚頭到敲人這兩個(gè)概念之間的神經(jīng)通路被走過了很多遍(譬如由于經(jīng)常拿磚頭敲人),神經(jīng)元之間的聯(lián)系相當(dāng)“粗”(形象的說法,嚴(yán)格的事實(shí)請(qǐng)參考《追尋記憶的痕跡》),而不經(jīng)常拿磚頭敲人的人呢,這個(gè)聯(lián)系就非常的弱,乃至于根本激不起一次神經(jīng)沖動(dòng)。那么為什么通過啟發(fā)式方法又能聯(lián)想到呢?因?yàn)閱l(fā)式方法相當(dāng)于帶入了一種新的神經(jīng)調(diào)控回路,首先它增加你聯(lián)系到磚頭的屬性維度上的可能性,使得“質(zhì)地堅(jiān)硬”、“棱角”這兩個(gè)語意概念被激活起來(注意,如果沒有啟發(fā)式方法的參與,這是不會(huì)發(fā)生的),一旦后者被激活起來,從后者到“敲人”的聯(lián)系就被激活起來了。從本質(zhì)上,解題中的啟發(fā)聯(lián)想方法做的也就是這個(gè)工作。而越是一般性的啟發(fā)式方法就越是能對(duì)廣泛的問題有幫助(譬如《How to Solve It》中介紹的那些,譬如分類討論、分治,乃至我認(rèn)為很重要的一個(gè) — 寫下自己的思維過程,詳細(xì)分解各個(gè)環(huán)節(jié),考察思維路徑中有無其他可能性(我們很容易拿到一道題目便被一種沖動(dòng)帶入到某一條特定的思路當(dāng)中,并且遵循著“最可能的”推導(dǎo)路徑往下走,往往不自覺地忽略其他可能性,于是在那些可能性上的聯(lián)想就被我們的注意力“抑制”了))。
2)輔助探索出hard knowledge。倒推法是一種啟發(fā)式思考方法,它將你的注意力集中到問題的結(jié)論中蘊(yùn)含的知識(shí)上,一旦你開始關(guān)注可能從結(jié)論中演繹出來的知識(shí),你就可能得到hard knowledge,即并不是早先就存在你腦子里,但是可以通過演繹獲得的。上文中的最小和子序列中的倒推方法就是一個(gè)例子。