2008年11月13日 星期四

Fibonacci Number(2), 兔子繁殖



<節錄自網路http://home.educities.edu.tw/mario123/problems/fibonacci.htm>
1202年,義大利數學家斐波那契出版了他的「算盤全書」。他在書中提出了一個關於兔子繁殖的問題:

如果一對兔子每月能生一對小兔(一雄一雌),而每對小兔在牠出生後的第三個月裡,又能開始生一對小兔,假定在不發生死亡的情況下,由一對出生的小兔開始,50個月後會有多少對兔子?

在第一個月時,只有一對小兔子,過了一個月,那對兔子成熟了,在第三個月時便生下一對小兔子,這時有兩對兔子。再過多一個月,成熟的兔子再生一對小兔子,而另一對小兔子長大,有三對小兔子。如此推算下去,我們便發現一個規律(如上圖,請點擊見大圖)
----------------------------------------------------------

上一篇貼出了費氏數列的成形方式。這篇列出費氏數列可對應的具體事物(雖然兔子的生育繁殖還是一種推論模型),讓費氏數列脫離冰冷的數理邏輯,似乎指涉一種「真實的」生物繁殖,讓我對於數字玄妙與生物形態之間的關係,不再是兩個分離的世界,數字運作好比繁殖運作般工作,在執行生物任務。

第一次我看到數字在繁殖,真奇妙!

2008年11月12日 星期三

Fibonacci Number(1), 斐波那契數列(費氏數列)





[pic02] A tiling with squares whose sides are successive Fibonacci numbers in length

[pic03] A Fibonacci spiral created by drawing arcs connecting the opposite corners of squares in the Fibonacci tiling; this one uses squares of sizes 1, 1, 2, 3, 5, 8, 13, 21, and 34; see Golden spiral


節錄自wikipedia

斐波那契數列(Fibonacci Sequence),台灣譯為費氏數列。

在數學上,斐波那契數列是以遞歸的方法來定義:

F0 = 0
F1 = 1
Fn = (Fn - 1) + (Fn - 2)
用文字來說,就是斐波那契數列由0和1開始,之後的斐波那契數就由之前的兩數相加。首幾個斐波那契數是(OEIS A000045):

0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946,………………

特別指出:0不是第一項,而是第零項。

In mathematics, the Fibonacci numbers are a sequence of numbers named after Leonardo of Pisa, known as Fibonacci. Fibonacci's 1202 book Liber Abaci introduced the sequence to Western European mathematics, although the sequence had been previously described in Indian mathematics.

The first number of the sequence is 0, the second number is 1, and each subsequent number is equal to the sum of the previous two numbers of the sequence itself, yielding the sequence 0, 1, 1, 2, 3, 5, 8, etc. In mathematical terms, it is defined by the [pic01] recurrence relation:

That is, after two starting values, each number is the sum of the two preceding numbers. The first Fibonacci numbers also denoted as Fn, for n = 0, 1, 2, … ,20 are:

[F0]0, [F1]1, [F2]1, [F3]2, [F4]3, [F5]5, [F6]8, [F7]13, [F8]21, [F9]34, [F10]55, [F11]89, [F12]144, [F13]233, [F14]377, [F15]610, [F16]987, [F17]1597, [F18]2584, [F19]4181, [F20]6765

2008年11月10日 星期一

Rhino Script Excise05



Option Explicit
'Script written by David Rutten
'Script copyrighted by Robert McNeel & Associates
'Script version 2008年11月10日 下午 09:50:44

Call IterativeShortenCurve()
Sub IterativeShortenCurve()
Dim strCurveID : strCurveID = Rhino.GetObject("Open curve to smooth", 4, True)
If IsNull(strCurveID) Then Exit Sub
If Rhino.IsCurveClosed(strCurveID) Then Exit Sub

Dim dblMin, dblMax, dblGoal
dblMin = Rhino.Distance(Rhino.CurveStartPoint(strCurveID), Rhino.CurveEndPoint(strCurveID))
dblMax = Rhino.CurveLength(strCurveID)
dblGoal = Rhino.GetReal("Goal Length", 0.5*(dblMin + dblMax), dblMin, dblMax)
If IsNull(dblGoal) Then Exit Sub

Do Until Rhino.CurveLength(strCurveID) < dblGoal
Call Rhino.EnableRedraw(False)
strCurveID = SmoothCurve(StrCurveID, 0.1)
If IsNull(strCurveID) Then Exit Do
Call Rhino.EnableRedraw(True)
Loop
End Sub

2008年11月5日 星期三

建築可以是一門科學(四) something about "Uncertain"

世界銀行經濟學家以及後來在馬里蘭大學任教的卡爾佛(Guillermo Calvo),在許多會議上提出的問題,正是我們該問的:「這麼小的罪為什麼受到那麼大的懲罰?」龍舌蘭酒危機發生之後,我們很容易回顧墨西哥在危機之前採取了哪些政策,並發現它們充滿錯誤。但事寶上當年那些政策實施時,看起來都很好,甚至事過境遷,也很難找出任何嚴重的過失,以致一九九五年的經濟巨災勢不可免。我們實在應該謹記卡爾佛的問題,以及其中的含意:這個世界上存在一些機制,能讓微小的政策錯誤演變成重大的經濟災難。我們實在應該更仔細探討一些評論家所說的話,也就是墨西哥其實根本沒有犯下嚴重的錯誤。除了一連串短暫的失言,使得市場產生錯誤的見解,並引發自己嚇自己的恐慌。我們也實在應該了解,發生在墨西哥身上的事,也可能發生在別的地方:一個經濟體看似成功。管理者備受市場和新聞媒體讚譽,不能保證那個經濟體便有免疫力,不會突然發生金融危機。

節錄自「失靈的年代」P106


這裡觸及的經濟危機與晚近流行的思潮如「蝴蝶效應」、「突現」等相關。我們所處的世界,各形各色的機制交纏一起,複雜度比過去更難以掌控。解決問題不能僅從單一面向思考,需要多元的連結;解決的方案不再是萬年的神奇妙藥,面對瞬息萬變的變化,理應時時因應,隨時調整。任何被讚賞的成就,或許是另一個災難的源頭。

而我們所居、所住、所設計的建築,該如何面對這個世界呢?是我們建築設計者應該思考的問題。

2008年11月4日 星期二

Rhino Script Excise04


Option Explicit
'Script written by David Rutten
'Script copyrighted by Robert McNeel & Associates
'This script will compute a bunch of cross-product vector based on a pointcloud
'Script version 2008年11月2日 下午 12:13:07

Call VectorField()
Sub VectorField()
Dim strCloudID
strCloudID = Rhino.GetObject("Input pointcloud", 2, True, True)
If IsNull(strCloudID) Then Exit Sub

Dim arrPoints : arrPoints = Rhino.PointCloudPoints(strCloudID)
Dim ptBase : ptBase = Rhino.GetPoint("Vector field base point")
If IsNull(ptBase) Then Exit Sub

Dim i
For i = 0 To UBound(arrpoints)
Dim vecBase
vecBase = Rhino.VectorCreate(arrPoints(i), ptBase)

Dim vecDir : vecDir = Rhino.VectorCrossProduct(vecBase, Array(0,0,1))

If Not IsNull(vecDir) Then
vecDir = Rhino.VectorUnitize(vecDir)
vecDir = Rhino.VectorScale(vecDir, 2.0)

Call AddVector(vecDir, arrPoints(i))
End If
Next
End Sub

2008年11月1日 星期六

Hoberman Switch Pitch



一直以來對Hoberman都是非常推崇的,他發展了許多令人驚艷的可動式結構,變化的效果是具備高層次的設計思考,並非一兩眼就能看穿的設計。可喜的是他那可變式的結構,也發展出兒童玩具,我一直都有高度的興趣想買一個給自己,但台灣似乎買不到,從Amazon買又要付出高額的運費,一直下不了手。

直到上星期,逛了微風Plaza,發現了一個可變化皮層的玩具球,當下沒認出來是Hoberman的設計,但覺得很有趣,也就買了下來。回家把玩之後,赫然發現是Hoberman的設計,整個人只覺得喜歡的東西是有脈絡的,不是找到Hoberman,也會是Hoberman來找到自己!分享這個玩具!

玩具網頁:http://www.hoberman.com/fold/Switchpitch/switchpitch.htm