DP优化
通常來(lái)說(shuō)從決策數(shù)量上來(lái)優(yōu)化Dp有以下幾種方法:
斜率優(yōu)化
用于優(yōu)化帶多項(xiàng)式的乘積項(xiàng)的狀態(tài)轉(zhuǎn)移方程,即f[i]=min/max{f[j]+(x[i]-x[j])^2} 這樣的,
我們把他展開(kāi)可以得到f[i]=min/max{f[j]+x[i]^2+x[j]^2-2*x[i]*x[j]}?
根據(jù)動(dòng)規(guī)方程狀態(tài)i從狀態(tài)j轉(zhuǎn)化而來(lái),
我們可以化成類(lèi)似f[i]=(f[j]+…)+(-i*f[i-1]*f[j])+(i+…)的形式?
其中藍(lán)色部分只與j有關(guān),紅色部分與i,j有關(guān),綠色部分只與i或常數(shù)有關(guān)?
我們可以固定i,故變形為?
f[i]-i-…=(f[j]+…)+(-i*f[i-1]*f[j])?
考慮幾何意義,?
令藍(lán)色部分為y,紅色部分中的i部分為導(dǎo)數(shù)k,紅色部分中j部分為x,綠色部分只是常數(shù),在幾何意義上只是截距,與單調(diào)性無(wú)關(guān),可以設(shè)為B?
故得y=kx-B?
這樣就可以利用線(xiàn)性規(guī)劃來(lái)做了,
容易發(fā)現(xiàn)無(wú)論一次函數(shù)的斜率怎么變,截距最小時(shí)取的點(diǎn)一定是那所有點(diǎn)求出的下凸殼上的某一個(gè)點(diǎn)。 因此我們只要每次在上邊尋找最優(yōu)解,然后加點(diǎn)時(shí)維護(hù)這個(gè)下凸殼即可。 根據(jù)斜率和(x,y)的單調(diào)性不同有不同的維護(hù)方法。
四邊形不等式優(yōu)化
下面我們通過(guò)四邊形不等式來(lái)優(yōu)化上述方程,首先介紹什么是”區(qū)間包含的單調(diào)性“和”四邊形不等式“
(1)區(qū)間包含的單調(diào)性:如果對(duì)于i≤i'<j≤j',有w(i',j)≤w(i,j'),那么說(shuō)明w具有區(qū)間包含的單調(diào)性。(可以形象理解為如果小區(qū)間包含于大區(qū)間中,那么小區(qū)間的w值不超過(guò)大區(qū)間的w值)
(2)四邊形不等式:如果對(duì)于i≤i'<j≤j',有w(i,j)+w(i',j')≤w(i',j)+w(i,j'),我們稱(chēng)函數(shù)w滿(mǎn)足四邊形不等式。(可以形象理解為兩個(gè)交錯(cuò)區(qū)間的w的和不超過(guò)小區(qū)間與大區(qū)間的w的和)
下面給出兩個(gè)定理
定理一:如果上述的w函數(shù)同時(shí)滿(mǎn)足區(qū)間包含單調(diào)性和四邊形不等式性質(zhì),那么函數(shù)m也滿(mǎn)足四邊形不等式性質(zhì)。
?
我們?cè)俣xs(i,j)表示m(i,j)取得最優(yōu)值時(shí)對(duì)應(yīng)的下標(biāo)(即i≤k≤j時(shí),k處的w值最大,則s(i,j)=k)。此時(shí)有如下定理
定理二:假如m(i,j)滿(mǎn)足四邊形不等式,那么s(i,j)單調(diào),即s(i,j)≤s(i,j+1)≤s(i+1,j+1)。
?
好了,有了上述的兩個(gè)定理后,我們發(fā)現(xiàn)如果w函數(shù)滿(mǎn)足區(qū)間包含單調(diào)性和四邊形不等式性質(zhì),那么有s(i,j-1)≤s(i,j)≤s(i+1,j)。即原來(lái)的狀態(tài)轉(zhuǎn)移方程可以改寫(xiě)為下式:
m(i,j)=min{m(i,k-1),m(k,j)}+w(i,j)(s(i,j-1)≤k≤s(i+1,j))(min也可以改為max)
由于這個(gè)狀態(tài)轉(zhuǎn)移方程枚舉的是區(qū)間長(zhǎng)度L=j-i,而s(i,j-1)和s(i+1,j)的長(zhǎng)度為L(zhǎng)-1,是之間已經(jīng)計(jì)算過(guò)的,可以直接調(diào)用。不僅如此,區(qū)間的長(zhǎng)度最多有n個(gè),對(duì)于固定的長(zhǎng)度L,不同的狀態(tài)也有n個(gè),故時(shí)間復(fù)雜度為O(N^2),而原來(lái)的時(shí)間復(fù)雜度為O(N^3),實(shí)現(xiàn)了優(yōu)化!今后只需要根據(jù)方程的形式以及w函數(shù)是否滿(mǎn)足兩條性質(zhì)即可考慮使用四邊形不等式來(lái)優(yōu)化了。
?
?
?
轉(zhuǎn)載于:https://www.cnblogs.com/2020pengxiyue/p/9348530.html
總結(jié)
- 上一篇: html布局(盒子)
- 下一篇: 7_23 day26 14min