動態規劃原理

2022-08-15 16:51:19 字數 831 閱讀 8675

適合應用動態規劃方法求解的最優化問題應該具備的兩個要素:

1、最優子結構

最優子結構性質:如果乙個問題的最優解包含其子問題的最優解,就稱該問題具有最優子結構性質

使用動態規劃方法時,我們用子問題的最優解來構造原問題的最優解。因此,我們必須小心確保考察了最優解中用到的所有子問題。

在發掘最優子結構性質的過程中,實際上遵循了如下的通用模式:

(1)、證明問題最優解的第乙個組成部分是做出乙個選擇。做出這次選擇會產生乙個或多個待解的子問題。

(2)、對於乙個給定的問題,在其可能的第一步選擇中,你假定已經知道哪種選擇才會得到最優解,你現在並不關心這種選擇具體是如何得到的,只是假定已經知道了這種選擇。

(3)、給定可獲得最優解的選擇後,你確定這次選擇會產生哪些子問題,以及如何最好地刻畫子問題空間。

(4)、利用「剪下-

貼上」技術證明:作為構成原問題最優解的組成部分,每個子問題的解就是它本身的最優解(即子問題的最優解構成原問題的最優解)。可用反證法進行證明。

然後根據以上分割的子問題,列出遞迴方程。

2、子問題重疊

適合用動態規劃方法求解的最優化問題應該具備的第二個性質是子問題空間必須足夠「小」,即問題的遞迴演算法會反覆求解相同的子問題,而不是一直生成新的子問題。

如果遞迴演算法反覆求解相同的子問題,我們就稱最優化問題具有重疊子問題性質。

動態規劃演算法通常這樣利用重疊子問題性質:對每個子問題求解一次,將解存入乙個表中,當再次需要這個子問題時直接查表,每次查表的代價為常量時間。

動態規劃原理

子問題與原問題具有完全相同的結構 是否可以用結束狀態確定 狀態?不一定具有無後效性?在每個子問題的求解中都利用了它前面的子問題的最優化結果,依次進行,最後乙個子問題所得到的最 優解就是整個問題的最優解 最優化原理 區域性最優解導致全域性最優解 無後效性 dp 首先,請注意無後效性一般是針對問題的分析...

動態規劃原理

運用動態規劃求解最優化問題第一步 若乙個問題的最優解中包含其子問題的最優解,則此問題具有最優解的結構性質。因為使用子問題的最優解構造原問題最優解,所以我們必須確保考察了最優解中用到的所有子問題。如何發掘最優子結構性質 證明問題最優解的第乙個組成部分是做出乙個選擇。例如切割鋼條的第一次切割位置。做出該...

動態規劃原理

動態規劃方法通常用來求解最優化問題 最優子結構 如果乙個問題的最優解包含其子問題的最優解,那麼就稱此問題具有最優子結構性質。某個問題是否適用動態規劃方法,觀察其是否具有最優子結構性質是乙個好的線索 具有最優子結構性質也可能意味著適用貪心策略 實際上,發掘最優子結構性質遵循如下的通用模式 不同問題的最...