日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

UA SIE545 优化理论基础9 优先与分治策略1 文件的最优存储顺序

發(fā)布時間:2025/4/14 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 UA SIE545 优化理论基础9 优先与分治策略1 文件的最优存储顺序 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

UA SIE545 優(yōu)化理論基礎(chǔ)9 優(yōu)先與分治策略1 文件的最優(yōu)存儲順序

  • 單磁帶存儲
    • 相同查詢頻率
    • 相同文件長度
    • 查詢頻率與文件長度均不同

單磁帶存儲

相同查詢頻率

這一章介紹優(yōu)先策略與分治策略,我們從一個簡單的例子開始介紹優(yōu)先策略。考慮非常簡單的磁帶存儲問題:如果我們把nnn個文件存儲在磁帶上,那么這nnn個文件只能按存儲順序進(jìn)行讀寫,假設(shè)Li,i=1,?,nL_i,i=1,\cdots,nLi?,i=1,?,n表示第iii個文件長度,假設(shè)查詢每個文件的概率相同,求最優(yōu)的文件存儲順序。

假設(shè)σ\sigmaσ表示一個nnn階的排列,即σ∈Pn\sigma \in P_nσPn?。我們可以用排列來表示文件存儲的順序,即σ(1),?,σ(n)\sigma(1),\cdots,\sigma(n)σ(1),?,σ(n),其中σ(i)∈{1,?,n}\sigma(i) \in \{1,\cdots,n\}σ(i){1,?,n}表示第iii個文件被存放在第σ(i)\sigma(i)σ(i)個位置,記j=σ(i)j=\sigma(i)j=σ(i),則第iii個文件前面還有j?1j-1j?1個文件,讀完第iii個文件需要的總長度為
∑k=1jLσ?1(k)\sum_{k=1}^{j}L_{\sigma^{-1}(k)}k=1j?Lσ?1(k)?

基于這個發(fā)現(xiàn),我們可以計(jì)算給定一個排列,查詢一次文件平均需要讀的長度,并且以此定義尋找最優(yōu)存儲順序的最優(yōu)化問題:
min?σ∈Pn1n∑j=1n∑k=1jLσ?1(k)\min_{\sigma \in P_n} \frac{1}{n}\sum_{j=1}^{n}\sum_{k=1}^{j}L_{\sigma^{-1}(k)}σPn?min?n1?j=1n?k=1j?Lσ?1(k)?

因?yàn)椴樵兠總€文件的概率相同,直覺上我們應(yīng)該把小文件放前面,大文件放在后面,也就是σ\sigmaσ要滿足
Lσ?1(1)≤?≤Lσ?1(n)L_{\sigma^{-1}(1)} \le \cdots \le L_{\sigma^{-1}(n)}Lσ?1(1)??Lσ?1(n)?

證明
注意到σ?1\sigma^{-1}σ?1也是一個nnn階排列,記τ=σ?1,τ∈Pn\tau = \sigma^{-1},\tau \in P_nτ=σ?1,τPn?。定義
S(τ)=∑j=1n∑k=1jLτ(k)=∑k=1n(n?k+1)Lτ(k)S(\tau)=\sum_{j=1}^{n}\sum_{k=1}^{j}L_{\tau(k)} = \sum_{k=1}^n(n-k+1)L_{\tau(k)}S(τ)=j=1n?k=1j?Lτ(k)?=k=1n?(n?k+1)Lτ(k)?

假設(shè)τ\tauτ使得字長滿足
Lτ(1)≤?≤Lτ(n)L_{\tau(1)} \le \cdots \le L_{\tau(n)}Lτ(1)??Lτ(n)?

如果交換τi\tau_{i}τi?τj\tau_{j}τj? (j>ij>ij>i),即定義τ′\tau'τ滿足
τ′=(1?i?j?nτ(1)?τ(j)?τ(i)?τ(n))\tau' = \left( \begin{matrix} 1 & \cdots & i & \cdots & j & \cdots & n \\ \tau(1) & \cdots & \tau(j) & \cdots & \tau(i) & \cdots & \tau(n)\end{matrix} \right)τ=(1τ(1)????iτ(j)????jτ(i)????nτ(n)?)

那么這會導(dǎo)致SSS增加
S(τ′)?S(τ)=[(n?i+1)Lτ(j)+(n?j+1)Lτ(i)]?[(n?i+1)Lτ(i)+(n?j+1)Lτ(j)]=(j?i)(Lτ(j)?Lτ(i))>0S(\tau')-S(\tau) = [(n-i+1)L_{\tau(j)}+(n-j+1)L_{\tau(i)}]\\ -[(n-i+1)L_{\tau(i)}+(n-j+1)L_{\tau(j)}] = (j-i)(L_{\tau(j)}-L_{\tau(i)})>0S(τ)?S(τ)=[(n?i+1)Lτ(j)?+(n?j+1)Lτ(i)?]?[(n?i+1)Lτ(i)?+(n?j+1)Lτ(j)?]=(j?i)(Lτ(j)??Lτ(i)?)>0

因此
τ=arg?min?σ∈Pn1n∑j=1n∑k=1jLσ?1(k)\tau = \argmin_{\sigma \in P_n} \frac{1}{n}\sum_{j=1}^{n}\sum_{k=1}^{j}L_{\sigma^{-1}(k)}τ=σPn?argmin?n1?j=1n?k=1j?Lσ?1(k)?
證畢

相同文件長度

假設(shè)nnn個文件長度相同,但查詢頻率分別為f1,?,fnf_1,\cdots,f_nf1?,?,fn?,其中
f1+?+fn=1f_1+\cdots+f_n = 1f1?+?+fn?=1

則最優(yōu)存儲順序?yàn)椴樵冾l率高的文件放在前面,查詢頻率低的文件放后面。

證明
同樣用nnn階排列表示存放順序,并且不失一般性,用1表示文件長度,則讀完第iii個文件需要的總長度為
∑k=1j1=j\sum_{k=1}^{j}1 = jk=1j?1=j

對應(yīng)的頻率是fσ?1(j)f_{\sigma^{-1}(j)}fσ?1(j)?,因此這時的最優(yōu)化問題變成了
min?σ∈Pn∑j=1njfσ?1(j)\min_{\sigma \in P_n} \sum_{j=1}^{n} jf_{\sigma^{-1}(j)}σPn?min?j=1n?jfσ?1(j)?

τ=σ?1,τ∈Pn\tau = \sigma^{-1},\tau \in P_nτ=σ?1,τPn?。定義
S(τ)=∑j=1njfτ(j)S(\tau)=\sum_{j=1}^{n} jf_{\tau(j)}S(τ)=j=1n?jfτ(j)?

假設(shè)τ\tauτ使得查詢頻率滿足
fτ(1)≥?≥fτ(n)f_{\tau(1)} \ge \cdots \ge f_{\tau(n)}fτ(1)??fτ(n)?

沿用上一個證明對τ′\tau'τ的證明,計(jì)算

S(τ′)?S(τ)=[ifτ(j)+jfτ(i)]?[ifτ(i)+jfτ(j)]=(j?i)(fτ(i)?fτ(j))>0S(\tau')-S(\tau) = [if_{\tau(j)}+jf_{\tau(i)}] -[if_{\tau(i)}+jf_{\tau(j)}] \\= (j-i)(f_{\tau(i)}-f_{\tau(j)})>0S(τ)?S(τ)=[ifτ(j)?+jfτ(i)?]?[ifτ(i)?+jfτ(j)?]=(j?i)(fτ(i)??fτ(j)?)>0

證畢

查詢頻率與文件長度均不同

假設(shè)nnn個文件長度不同,并且查詢頻率也不同,最優(yōu)存儲順序?yàn)槠骄孔植樵冾l率高的文件放在前面,平均每字查詢頻率低的文件放后面。
證明
證明方法與前文完全一樣。讀完第iii個文件需要的總長度為
∑k=1jLσ?1(k)\sum_{k=1}^{j}L_{\sigma^{-1}(k)}k=1j?Lσ?1(k)?

對應(yīng)的頻率是fσ?1(j)f_{\sigma^{-1}(j)}fσ?1(j)?,因此最優(yōu)化問題可以寫成
min?σ∈Pn∑j=1nfσ?1(j)∑k=1jLσ?1(k)\min_{\sigma \in P_n} \sum_{j=1}^{n}f_{\sigma^{-1}(j)}\sum_{k=1}^{j}L_{\sigma^{-1}(k)}σPn?min?j=1n?fσ?1(j)?k=1j?Lσ?1(k)?

τ=σ?1,τ∈Pn\tau = \sigma^{-1},\tau \in P_nτ=σ?1,τPn?使之滿足
fτ(1)/Lτ(1)≥?≥fτ(n)/Lτ(n)f_{\tau(1)}/L_{\tau(1)} \ge \cdots \ge f_{\tau(n)}/L_{\tau(n)}fτ(1)?/Lτ(1)??fτ(n)?/Lτ(n)?

用前兩個證明的思路,可以說明τ\tauτ是最優(yōu)解。

證畢

根據(jù)上面的論述,在計(jì)算上,我們把最優(yōu)存儲問題變成了排序問題,這就是優(yōu)先策略的體現(xiàn),因?yàn)槲覀兪前凑掌骄孔植樵冾l率優(yōu)先的原則對文件進(jìn)行排序的。對于這一類找最優(yōu)pecking order的問題,優(yōu)化的目標(biāo)是最大化gain或者最小化cost,在確定pecking order的時候,我們應(yīng)該按每一次pecking的marginal gain最大、或者marginal cost最小的原則進(jìn)行,這就是優(yōu)先策略的思想。

《新程序員》:云原生和全面數(shù)字化實(shí)踐50位技術(shù)專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結(jié)

以上是生活随笔為你收集整理的UA SIE545 优化理论基础9 优先与分治策略1 文件的最优存储顺序的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。