2004-01-06 04:33:13Peter21

創意到訪實錄

Flash課程的後期,老師介紹一種流動選單的做法,並一一拆解程式,說明設計的原理。
其中有一行程式
Y=(Yn-1 * 9+(181-x)/20)/10
老師坦承想不透其中「9」、 「20」、 「10」代表的意義,
大夥兒七嘴八舌、胡謅瞎猜,但都得不出一個可以服眾的道理。

下課前心裡想著:「今天晚上一定要把這個難題解開!」。

回到家,打開電腦研究了一陣子,不得要領….。拖著疲憊的身體,在午夜前上床就寢。

第二天一早醒來,才4點5分,比平常起床時間早了2個小時。
已無睡意的我起身上完廁所,拿起一本新買的書隨意翻看。
突然…腦中浮現兩個字---「收斂」......
馬上拿來紙筆,在床上進行演算。
沒錯!是函數收斂現象。
打開電腦,就各種可能情況模擬、測試,得到了下列正確的結果。

以 Yn=(Yn-1 * a + (182-x) / b ) / c 表示 ( n>0 , 364>x>0 )

若 c > a ,則 函數收斂 ,Yn為定值, 選單以定速流動。
若 a > c ,則 函數發散 ,Yn為無限大 ,選單加速流動,最後停止不動。
b為控制速度之主要變數, b與Yn成反比。
a, c亦可影響Yn值。 a與Yn成正比, c與Yn成反比。


Bingo!解開了….好爽!再一次體驗靈感降臨的奇妙時刻。


其實,答案並不是我「想」出來的,它是自己冒出來的。
理智上我已放棄求解的企圖,但潛意識(下意識)並沒有停下來。在我睡覺的時候,大腦仍在意識可及的範圍之外自我連結、組織出正確的答案。

1998年神奇的啟悟經驗,發現--「創意之源」是大腦的自我組織。前陣子在幾份資料中,看到有學者曾提出相同的說法,
簡單說就是--創意常產生於苦思後放鬆的時刻。

個人認為要領在於...如何打開自我組織的開關?
...平常如何觀察、凝鍊創意因子?

當然,基礎知識是必要的!
如果我沒有「收斂」的概念,我想答案不會憑空冒出來。
(事後一位唸數學系的朋友說--正確說法是「區間函數的收斂」)



附錄

Flash Action程式解析---區間函數的收斂值

原始程式….
mouseh = getProperty("/tracker", _x);
mousev = getProperty("/tracker", _y);
if (Number(mousev)>15 and Number(mousev)<35) {
movevalue = (Number(movevalue*9)+Number(((mouseh-182)/20)))/10;
setProperty("/alert", _visible, true);
} else {
setProperty("/alert", _visible, false);
}

第四行
movevalue = (Number(movevalue*9)+Number(((mouseh-182)/20)))/10;
其中數字 9,20,10代表之意義為何?

這一行程式為一區間函數(0< mouseh<364) ,
其目的在得出一個收斂值(定值的movevalue)。
若改以下式表示
Yn=(Yn-1 * a + (x-182)/b)/c ( n>0 , 0
則 當a 若 a>(=)c ,Yn發散, Banner加速流動,最後停止不動。

b為控制速度 Yn值之主要變數, b與Yn成反比。
a,c 亦可影響 Yn值 。 a與Yn成正比,c與Yn成反比 。

重點---
1.a必須小於c
2.調整b控制流動速度(Yn,即movevalue),b與Yn成反比。





~2002