日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

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

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

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

  • 單磁帶存儲(chǔ)
    • 相同查詢頻率
    • 相同文件長(zhǎng)度
    • 查詢頻率與文件長(zhǎng)度均不同

單磁帶存儲(chǔ)

相同查詢頻率

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

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

基于這個(gè)發(fā)現(xiàn),我們可以計(jì)算給定一個(gè)排列,查詢一次文件平均需要讀的長(zhǎng)度,并且以此定義尋找最優(yōu)存儲(chǔ)順序的最優(yōu)化問(wèn)題:
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)椴樵兠總€(gè)文件的概率相同,直覺(jué)上我們應(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也是一個(gè)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τ使得字長(zhǎng)滿足
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)?)

那么這會(huì)導(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)?
證畢

相同文件長(zhǎng)度

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

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

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

對(duì)應(yīng)的頻率是fσ?1(j)f_{\sigma^{-1}(j)}fσ?1(j)?,因此這時(shí)的最優(yōu)化問(wèn)題變成了
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)?

沿用上一個(gè)證明對(duì)τ′\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

證畢

查詢頻率與文件長(zhǎng)度均不同

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

對(duì)應(yīng)的頻率是fσ?1(j)f_{\sigma^{-1}(j)}fσ?1(j)?,因此最優(yōu)化問(wèn)題可以寫(xiě)成
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)?

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

證畢

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

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

總結(jié)

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

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