數模天空|動態規劃

2022-01-01 西工大數學與統計

動態規劃(dynamic programming)是運籌學的一個分支,是求解決策過程(decision  process)最優化的數學方法。動態規劃問世以來,在經濟管理、生產調度、工程技術和最優控制等方面得到了廣泛的應用。例如最短路線、庫存管理、資源分配、設備更新、排序、裝載等問題,用動態規劃方法比用其它方法求解更為方便。

動態規劃是求解某類問題的一種方法,是考察問題的一種途徑,而不是 一種特殊算法(如線性規劃是一種算法)。因而,它不象線性規劃那樣有一個標準的數 學表達式和明確定義的一組規則,而必須對具體問題進行具體分析處理。因此,在學習 時,除了要對基本概念和方法正確理解外,應以豐富的想像力去建立模型,用創造性的技巧去求解。

如圖是一個線路網,連線上的數字表示兩點之間的距離(或費用)。試尋求一條由 A 到G 距離最短(或費用最省)的路線。

工廠生產某種產品,每單位(千件)的成本為 1(千元),每次開工的固定成本為3(千元),工廠每季度的最大生產能力為6(千件)。經調查,市場對該產品的需求量第 一、二、三、四季度分別為 2,3,2,4(千件)。如果工廠在第一、二季度將全年的需 求都生產出來,自然可以降低成本(少付固定成本費),但是對於第三、四季度才能上市的產品需付存儲費,每季每千件的存儲費為 0.5(千元)。還規定年初和年末這種產品均無庫存。試製定一個生產計劃,即安排每個季度的產量,使一年的總費用(生產成本和存儲費)最少。

動態規劃的基本概念和基本方程 

一個多階段決策過程最優化問題的動態規劃模型通常包含以下要素:

1.階段 

        階段(step)是對整個過程的自然劃分。通常根據時間順序或空間順序特徵來劃分階 段,以便按階段的次序解優化問題。階段變量一般用k = 1,2...n 表示。在圖1 中由 A 出發為 k = 1,由 Bi(i = 1,2) 出發為 k = 2 ,依此下去從 Fi(i =1,2) 出發為 k = 6 ,共 n = 6個階段。在例 2 中按照第一、二、三、四季度分為k = 1,2,3,4,共四個階段。 

2. 狀態 

        狀態(state)表示每個階段開始時過程所處的自然狀況。它應能描述過程的特徵並 且無後效性,即當某階段的狀態變量給定時,這個階段以後過程的演變與該階段以前各 階段的狀態無關。通常還要求狀態是直接或間接可以觀測的。

3.決策 

        當一個階段的狀態確定後,可以作出各種選擇從而演變到下一階段的某個狀態,這 種選擇手段稱為決策,在最優控制問題中也稱為控制。

4.狀態轉移方程 

        在確定性過程中,一旦某階段的狀態和決策為已知,下階段的狀態便完全確定。用 狀態轉移方程(equation of state transition)表示這種演變規律,寫作

5.指標函數和最優值函數 

        指標函數(objective function)是衡量過程優劣的數量指標,它是定義在全過程和所有 後部子過程上的數量函數

6.最優策略和最優軌線 

        使指標函數Vk,n 達到最優值的策略是從 k 開始的後部子過程的最優策略

簡稱最優策略。

7.遞歸方程 

         如下方程稱為遞歸方程

在上述方程中,當⊗為加法時取 fn+1(xn+1) = 0 ;當⊗為乘法時,取 fn+1(xn+1) =1。動態規劃遞歸方程是動態規劃的最優性原理的基礎,即:最優策略的子策略,構成最優子策略。

    如果一個問題能用動態規劃方法求解,那麼,我們可以按下列步驟,首 先建立起動態規劃的數學模型: 

(i)將過程劃分成恰當的階段。 

(ii)正確選擇狀態變量Xk,使它既能描述過程的狀態,又滿足無後效性,同時確定允許狀態集合Xk。 

(iii)選擇決策變量uk,確定允許決策集合Uk(xk)。 

(iv)寫出狀態轉移方程。 

(v)確定階段指標Vk (xk,uk ) 及指標函數Vkn的形式(階段指標之和,階段指標之積,階段指標之極大或極小等)。 

(vi)寫出基本方程即最優值函數滿足的遞歸方程,以及端點條件。

微信公眾號|工大數模天空

QQ|西北工業大學數模協會

相關焦點

  • 數模轉換器的速度極限_數模轉換器工作原理
    數模轉換器概述   數模轉換器,又稱D/A轉換器,簡稱DAC,它是把數字量轉變成模擬的器件。D/A轉換器基本上由4個部分組成,即權電阻網絡、運算放大器、基準電源和模擬開關。模數轉換器中一般都要用到數模轉換器,模數轉換器即A/D轉換器,簡稱ADC,它是把連續的模擬信號轉變為離散的數位訊號的器件。
  • 5.建立數模
    5.建立數模這一節包括建立數模、數模優化、數模應用。銜接上一步操作現在如果關電腦過,就重新點擊打開項目,然後找到之前保存的項目文件,打開就可以。如果你是一路看下來的,那麼就什麼都不用做,直接接著下面要說的步驟進行即可。
  • 一篇文帶你了解播放器與音效卡的「心臟」——DAC(數模轉換器)基本...
    本文經電子發燒友授權轉載,原標題《數模轉換器的基本原理及DAC類型簡介》,未經允許請勿轉載。數模轉換器(DAC)是將數字量轉換成模擬量,完成這個轉換的器件叫做數模轉換器。本文將介紹數模轉換器的概念、原理、主要技術指標以及不同類型DAC特點進行介紹。
  • 集成電路數模轉換器的原理及作用
    打開APP 集成電路數模轉換器的原理及作用 佚名 發表於 2017-11-28 15:30:26      集成電路數模轉換器都是二進位輸入的,而用運放構成的數模轉換器則不受數制和位數的限制。
  • 南郵:數模「三劍客」的登峰之旅
    4月初,2017年美國大學生數學建模競賽結果出爐,南京郵電大學的李嘉成(計算機學院、軟體學院信息安全)、曹涵(光電工程學院光電信息科學與技術)、黃飆(海外教育學院)組成的數模「三劍客」,不僅獲得競賽特等獎(Outstanding Winner),而且問鼎美國工業與應用數學學會獎(SIAM AWARD,簡稱SIAM獎)。
  • 動態規划算法秘籍
    4.1.1 算法思想動態規劃也是一種分治思想,但與分治算法不同的是,分治算法是把原問題分解為若干子問題,自頂向下,求解各子問題,合併子問題的解從而得到原問題的解。動態規劃也是把原問題分解為若干子問題,然後自底向上,先求解最小的子問題,把結果存儲在表格中,在求解大的子問題時,直接從表格中查詢小的子問題的解,避免重複計算,從而提高算法效率。
  • 初觀動態規劃
    介紹動態規劃前,先回顧下高中學的第一數學歸納法。
  • 【算法學習】動態規劃
    ->動態規劃。在這個分類中我們也可以看出:一個問題是該用遞推、貪心、搜索還是動態規劃,完全是由這個問題本身階段間狀態的轉移方式(也就是得出下一個狀態的方式)決定的。重點看有關動態規劃的部分。這種技巧,通俗的說叫「花費空間來節省時間」:動態規劃就是通過這樣的方式「記憶」過去,節省每次重新計算的時間。 我們可以用一個表來記錄所有已解的子問題的答案。不管該子問題以後是否被用到,只要它被計算過,就將其結果填入表中。這是動態規劃法的基本思路。具體的動態規划算法多種多樣,但它們具有相同的填表格式。
  • 動態規劃 - 矩陣鏈相乘
    一、動態規劃的簡單介紹1. 動態規劃的定義:動態規劃,通過把原問題分解為相對簡單的子問題的方式求解複雜問題的方法。2.動態規劃的特徵:重疊子問題、最優子結構、無後效性最優子結構是指一個問題的最優解如果包含其子問題的最優解,則這個問題具有最優子結構。無後效性的定義是某階段的狀態一旦確定,則此後過程的演變不再受此前各種狀態及決策的影響。
  • 總結 | 動態規劃十問十答
    今天給大家總結動態規劃十問十答,快速幫你掃盲動態規劃。答:動態規劃是一種通過「大而化小」的思路解決問題的算法。區別於一些固定形式的算法,如二分法,寬度優先搜索法,動態規劃沒有實際的步驟來規定第一步做什麼第二步做什麼。所以更加確切的說,動態規劃是一種解決問題的思想。
  • 斯坦福復旦教練天團帶你搞定美國數模競賽
    由「有方博雅」教育推出的斯坦福復旦教練帶你搞定美國HiMCM數模競賽。美國高中數學建模競賽(HiMCM)是一項由美國數學及其應用聯合會(COMAP)主辦的國際性數學競賽活動,活動旨在使用數學理論與工具解決現實生活問題。
  • 乾貨總結 | 動態規劃十問十答
    今天給大家總結動態規劃十問十答,快速幫你掃盲動態規劃。答:動態規劃是一種通過「大而化小」的思路解決問題的算法。區別於一些固定形式的算法,如二分法,寬度優先搜索法,動態規劃沒有實際的步驟來規定第一步做什麼第二步做什麼。所以更加確切的說,動態規劃是一種解決問題的思想。
  • 單片機C語言程序設計:ADC0809數模轉換與顯示
    打開APP 單片機C語言程序設計:ADC0809數模轉換與顯示 發表於 2018-01-05 15:36:36 本文分享ADC0809數模轉換與顯示的單片機C語言程序設計與電路圖。
  • 淺談PCB設計中PWM數模轉換器電路的布局
    打開APP 淺談PCB設計中PWM數模轉換器電路的布局 上海韜放電子 發表於 2020-12-10 16:20:00 通常,這是通過數模轉換器組件完成的,但這意味著將另一部分及其相關電路放置在板上。通過使用設計中已經使用的組件中已有的PWM功能,您可以轉換信號而無需在設計中添加其他多引腳組件。以下是有關如何在下一個印刷電路板上設計PWM數模轉換器的更多信息。 由於普通電路板上的大部分電路都是由數字電路組成的,因此將這些信號連接到數字接口設備是一件相當簡單的事情。以一個簡單的開關為例。
  • 距離數模國賽不足半個月,你準備好了嗎?
    現在距離國賽僅剩不到半個月的時間,前陣子各種各樣的數模比賽源源不斷地開展,為大家迎戰國賽提供不少的練習與積累,如何更好地準備競賽論文寫作,參賽時要注意什麼,卻依舊成為大家參賽中最大的困擾,特別是第一次接觸的小夥伴。
  • 一文讀懂動態規划算法
    由於動態規劃解決的問題多數有重疊子問題這個特點,為減少重複計算,對每一個子問題只解一次,將其不同階段的不同狀態保存在一個二維數組中。與分治法最大的差別是:適合於用動態規劃法求解的問題,經分解後得到的子問題往往不是互相獨立的(即下一個子階段的求解是建立在上一個子階段的解的基礎上,進行進一步的求解)。
  • 五大常用算法:動態規划算法
    一個決策序列就是在變化的狀態中產生出來的,所以,這種多階段最優化決策解決問題的過程就稱為動態規劃。二、基本思想與策略基本思想與分治法類似,也是將待求解的問題分解為若干個子問題(階段),按順序求解子階段,前一子問題的解,為後一子問題的求解提供了有用的信息。
  • 數模中預測類方法偏AI的走向
    在之前的數模競賽中,即便是美賽O獎的作品中,我們都能看到諸如灰色預測這樣的用MATLAB實現的方法,實際上我們有時間序列,回歸等一系列比較常用的預測方法。
  • 爭議漩渦中的「美國數模競賽」
    但這在國內數模競賽的開拓者們眼中是巨大的成就——他們不無自豪地在文章中表示,數模競賽起源於美國,卻在中國開花結果。保研、落戶加分、宣傳亮點奮戰96個小時後,黃文韜和隊友提交了一篇洋洋灑灑的關於養龍的論文,為了讓論文更出眾,黃文韜還發揮素描特長,為論文配上手繪的插圖。
  • 動態規划算法Dynamic Programming
    動態規劃與分治法相似,都是通過組合子問題的解來求解原問題。不同的是,分治法將問題劃分為互不相交的子問題,遞歸的求解子問題,再將他們的解組合起來,求出原問題的解。與之相反,動態規劃應用於子問題重疊的情況,即不同的子問題具有公共的子子問題。在這種情況下,分治法會做許多不必要的工作,他會反覆求解那些公共子子問題。