先修知識
- 拉格朗日乘數 (Lagrange Multipliers)
- 導數:特別是乘法法則和 xlogx 的導數。
- dxd(xlogx)=1⋅logx+x⋅x1=logx+1。
我們最大化目標函數:
f({πj})=∑j=1Kπj(Nj−logπj)=∑j=1K(πjNj−πjlogπj)
受限於:
∑j=1Kπj=1
步驟 1:建構拉格朗日函數
L({πj},λ)=∑j=1K(πjNj−πjlogπj)+λ(∑j=1Kπj−1)
步驟 2:求導數並設為零
對特定的 πj 取偏導數:
∂πj∂L=∂πj∂(πjNj)−∂πj∂(πjlogπj)+∂πj∂(λπj)
對 πjlogπj 使用乘法法則:
∂πj∂(πjlogπj)=1⋅logπj+πj⋅πj1=logπj+1
代回原式:
∂πj∂L=Nj−(logπj+1)+λ
設為零:
Nj−logπj−1+λ=0
步驟 3:以 λ 表示解出 πj
重新排列方程式以孤立 logπj:
logπj=Nj−1+λ
兩邊取指數:
πj=exp(Nj−1+λ)
πj=exp(Nj)⋅exp(λ−1)
步驟 4:解出拉格朗日乘數項
使用約束條件 ∑πj=1:
∑j=1K[exp(Nj)⋅exp(λ−1)]=1
由於 exp(λ−1) 不依賴於 j,我們可以將其提出:
exp(λ−1)∑j=1Kexp(Nj)=1
因此:
exp(λ−1)=∑k=1Kexp(Nk)1
步驟 5:代回以求 πj
將 exp(Nj) 乘以我們剛剛找到的因子:
πj=exp(Nj)⋅∑k=1Kexp(Nk)1
πj=∑k=1KexpNkexpNj