上一節我們講了動態規劃動態規劃的基本思想和一些經典例題,本節再來看幾個具體例子。
例6 設某工廠有 1000 臺機器,生產兩種產品 a、b ,若投入 x 臺機器生產 a 產品,則純收入為5x ,若投入 y 臺機器生產 b 種產品,則純收入為4y ,又知:生產 a 種 產品機器的年折損率為 20%,生產 b 產品機器的年折損率為 10%,問在 5 年內如何安 排各年度的生產計畫,才能使總收入最高?
1. 用 matlab 程式設計求例 6 的解。
2. 有四個工人,要指派他們分別完成 4 項工作,每人做各項工作所消耗的時間如 表 1 所示
問指派哪個人去完成哪項工作,可使總的消耗時間為最小?試對此問題用動態規劃 方法求解。
3. 為保證某一裝置的正常運轉,需備有三種不同的零件
現要求在既不超出投資額的限制,又能盡量提高裝置運轉的可靠性的條件下,問 各種零件的備件數量應是多少為好?
4. 某工廠購進 100 臺機器,準備生產 i、ii 兩種產品,若生產產品 i,每台機器每 年可收入 45 萬元,損壞率為 65%;若生產產品 ii,每台機器每年收入為 35 萬元,損 壞率為 35%,估計三年後將有新型機器出現,舊的機器將全部淘汰。試問每年應如何安排生產,使在三年內收入最多?
5.3 名商人各帶 1 名隨從乘船渡河,乙隻小船只能容納 2 人,由他們自己划行。 隨從們密約,在河的任一岸,一旦隨從人數比商人多,就殺商人。此密約被商人知道, 如何乘船渡河的大權掌握在商人們手中,商人們怎樣安排每次乘船方案,才能安全渡河 呢?
6.某一印刷廠有六項加工任務,對印刷車間和裝訂車間所需時間(單位:天)如 表 3 所示,試求最優的加工順序和總加工天數。
應用動態規劃的演算法
1 許多字串操作演算法如最長公共子列 最長遞增子列 最長公共字串 2 將動態規劃用於圖的樹分解,可以有效解決有界樹寬圖的生成樹等許多與圖相關的演算法問題 3 決定是否及如何可以通過某一特定上下文無關文法產生給定字串的cocke younger kasami cyk 演算法 4 計算機西洋棋中轉換表和...
動態規劃學習與例項 1
分解最優子結構 找出各級最優子結構間遞推關係 自底向上求解最優子結構表 追溯到最優解 problem1.給定乙個數字序列,找出其中最長子序列,子串行滿足順序遞增。求解最長子序列的長度和對應的子串行。problem2.給定乙個數字序列,找出其中和最大的子串行,並求解子串行的長度和對應的子串行。prob...
刷題筆記 動態規劃例項 打家劫舍
按照基本邏輯走 1,確定狀態 首先分析題目,找核心邏輯。本題中規定不能獲得相鄰位置的資料,同時可以容易想到,越到後面,累加值越大。由此我們遇到乙個問題,最後取第n個資料,還是取第n 1個資料呢?只需要比較一下前n個能取得的最大和與前n 1個能取到的最大和,誰大取誰。此處可以使用乙個陣列d儲存對應第i...