我們公司的求最優化問題可能與其它求最優化問題有些差別,因為它無論是輸入資料還是輸出資料,都是在excel電子**上進行的,**如下:
序號 長度
合計
切割數
實用長
源料長
用料數
餘料
處理
1 1058 57
2 1028 1311
3 989 684
4 1040 513
5 1180 57
6 1233.5 57
7 1311 57
8 875 114
9 837 57
10 978 57
11 866 57
12 50 4212
「長度」與「合計數量」例的資料是已有的,「源料長度」是使用者輸入的,其它4個例要用程式來計算。每一例與每一例之間都有一一的對應關係,也有優先順序。當使用者輸入源料長度後,程式先計算"切割數",求切割數的公式是:切割數=int(源材料長度/(長度+切割鋸縫))(切割鋸縫等於5),假設當使用者輸入源材料長度為5350,那麼序號1的切割數是 {int(5350/(1058+5))=5}(取整,忽略小數字),切割數求出來後,就接著求"實用長"。{實用長=((長度+5)*切割數)};實用長後是"用料數"。{用料數=合計數量/開料數};求出用料數後是求「餘料」。{餘料=源料長度-實用長}。所以它們的求解順序是:切割數->實用長->用料數->餘料。人工求解很簡單,但如果是在程式裡來計算,那就難了。因為在人工的運算過程中,開料人員不斷判斷、不斷優化,以求最優的開法,但程式卻無法像人那樣,所以開發這樣的程式有很大的難度。上面的求解關係很簡單,但卻有種種的限制:(1),要求餘料是浪費得最少的,一般是在50或100之間;(2),對於「用料數」不足一支的情況下,可以忽略餘料,比如下表的長度為1200的那一行,用5950的源料長度來開,但因為用料數為0.50小於1,所以那怕餘料為1110也可以忽略不計。(3),「合計」例數量最多的要優先求解,因為這是乙個關於最優化的問題,當需求的數量很大的時候,它所用到的材料就需求很多,如果不把餘料控制好,將會造成很大的浪費。(所以公司的要求是:把合計數量最多的(比如100支以上的)優先計算,剩下的數量需求不多的用「多級套料法」。注:多級套料法在下文解釋)(4),對源材料長度的種類限制,一般是限制4種(種類限制的意思是:比如6000為一種,5000為一種,4500為一種,4000為一種,總共是4種)。(5),程式根據使用者限制的種類優先計算合計數量最多的長度,然後把數量少的用多級套料法,所謂的多級套料法只是我們在開發過程中的乙個代名詞,它真正的原理是組合。在多級套料中使用者規定一種源料長度,用它來開所有「合計數量」少的長度,它原理是這樣的:上表有長度1233.5,如果用5000來開它,餘料是46,所以它是最優的,但此時卻不能用5000來開它,因為使用者已經規定了只能用6000來開它,用6000開了以後它的餘料是1046。為了不造成浪費,把餘料1046拿來開上面與它最接近或少於它的長度,比如1040。用式子表示的話可以如下表:
(1233.5+5)*4+(1040+5)*1=5999(餘料是6000-5999=1)
(1127+5)*4+(539+5)*1+(839+5)*1=5916 (6000-5916=84)
(924+5)*6+(343+5)*1=5922
(6000-5922=78)
(1192+5)*5=5985
(6000-5988=12)
(539+5)*11=5984
(6000-5984=16)
(6),當所有的長度都得到最優解後,還要一一對應的輸到excel**中去。至於採用多級套料法的,把組合的那些都寫到「處理」例去。如下表
長度 合計
切割數
實用長
源料長度
用料數
餘料
處理
1450
2 4 5840 5950 0.50 110
1085
12 4 4380 5950 1.50 1570 1450=1
1085
8 4 4380 5950 2.00 1570 1500=2
1200
2 4 4840 5950 0.50 1110
1630
18 2 3280 5950 9.00 2670 650=36
1630
12 2 3280 5950 6.00 2670 650=24
1630
4 2 3280 5950 2.00 2670 650=8
詳細需求分析的節奏
對原型我們要做到心中有乙個藍圖,提到某乙個頁面就能知道這個頁面中的關鍵元素。這個對我們理解系統和後面的詳細分析很有幫助。這個過程我們不必考慮實現只需要腦子裡有這麼乙個 結構就行啦。前面我們已經抽取過了主流程圖以及核心業務物件,但是我們沒有細扣原型中的每乙個元素的來龍去脈,這個步驟就是做這件事,從一下...
軟體需求與分析 問題賬戶需求分析
案例 某大銀行的一位銀行卡辦公室的收賬經理liz遇到了乙個問題。她每週都收到乙份過期未付款的賬戶名單。這份報告已經從兩年前的250個賬戶增加到現在的1250個賬戶。為了確定那些嚴重拖欠債務的賬戶,liz需要通讀這份報告。嚴重拖欠債務的賬戶由幾個不同的規則確定,每個規則都要求liz檢查客戶的一項或幾項...
需求管理與分析 需求池
產品經理 會聆聽使用者聲音進行需求收集 但是真正的需求需要我們去優化。真正優化的應該是從需求的收集 到最終形成功能融入到產品 中的這個過程。下面做乙個簡單科學的流程。一 需求收集 從使用者 市場 競品 同事 朋友等渠道無差別收集各類問題 建議 與想法,另外通過資料分析和解讀出來的需求也可以新增進去。...