2014年7月10日 星期四

費氏數列

費氏數列[編輯]


以費波那西數為邊的正方形拼成的長方形
費波那契數列義大利語:Successione di Fibonacci),又譯費波拿契數費氏數列費氏數列黃金分割數列
數學上,費波那契數列是以遞迴的方法來定義:
  • F0=0
  • F1=1
  • Fn=Fn1+Fn2(n≧2)
用文字來說,就是費波那契數列由0和1開始,之後的費波那契係數就由之前的兩數相加。首幾個費波那契係數是(OEISA000045):
01123581321345589144233……
特別指出0不是第一項,而是第零項。

源起[編輯]

根據高德納(Donald Ervin Knuth)的《計算機程式設計藝術》(The Art of Computer Programming),1150年印度數學家Gopala金月在研究箱子包裝物件長闊剛好為1和2的可行方法數目時,首先描述這個數列。 在西方,最先研究這個數列的人是比薩的李奧納多(義大利人斐波那契 Leonardo Fibonacci),他描述兔子生長的數目時用上了這數列。
  • 第一個月初有一對剛誕生的兔子
  • 第二個月之後(第三個月初)牠們可以生育
  • 每月每對可生育的兔子會誕生下一對新兔子
  • 兔子永不死去
假設在n月有可生育的兔子總共a對,n+1月就總共有b對。在n+2月必定總共有a+b對: 因為在n+2月的時候,前一月(n+1月)的b對兔子可以存留至第n+2月(在當月屬於新誕生的兔子尚不能生育)。而新生育出的兔子對數等於所有在n月就已存在的a對

表達式[編輯]

為求得費氏數列的一般表達式,可以藉助線性代數的方法。高中的初等數學知識也能求出。

初等代數解法[編輯]

已知
  • a1=1
  • a2=1
  • an=an1+an2

首先構建等比數列[編輯]

an+αan1=β(an1+αan2)
化簡得
an=(βα)an1+αβan2
比較係數可得:
{βα=1αβ=1
不妨設β>0,α>0
解得:
α=512β=5+12
所以有an+αan1=β(an1+αan2), 即{an+αan1}為等比數列。

求出數列{an+αan1}[編輯]

由以上可得:
an+1+αan=(a2+αa1)βn1=(1+α)βn1=βn
變形得: an+1βn+1+αβanβn=1β。 令bn=anβn

求數列{bn}進而得到{an}[編輯]

bn+1+αβbn=1β
bn+1+λ=αβ(bn+λ),解得λ=1α+β。 故數列{bn+λ}為等比數列
bn+λ=(αβ)n1(b1+λ)。而b1=a1β=1β, 故有bn+λ=(αβ)n1(1β+λ)
又有α=512β=5+12 和bn=anβn
可得an=55[(1+52)n(152)n]
得出an表達式
an=55(1+52)n(152)n

線性代數解法[編輯]

(Fn+2Fn+1)=(1110)(Fn+1Fn)
(Fn+2Fn+1Fn+1Fn)=(1110)n+1

構建一個矩陣方程[編輯]

設Jn為第n個月有生育能力的兔子數量,An為這一月份的兔子數量。
(Jn+1An+1)=(0111)(JnAn),
上式表達了兩個月之間,兔子數目之間的關係。而要求的是,An+1的表達式。

求矩陣的特徵值λ[編輯]

行列式:-λ*(1-λ)-1*1=λ2-λ-1
當行列式的值為0,解得λ1=12(1+5)λ2=12(15)

特徵向量[編輯]

將兩個特徵值代入
(0111)λE)x=0
求特徵向量x
x1=(112(1+5))
x2=(112(15))

沒有留言:

張貼留言