曹明緯 吳 迪 周文韜
(河海大學 土木與交通學院,江蘇 南京 210000)
有七種規格的包裝箱要裝到兩輛鐵路平板車上去。包裝箱的寬和高是一樣的,但厚度(t,以厘米計)及重量(w,以公斤計)是不同的。每輛平板車有10.2m 長的地方可用來裝包裝箱(像面包片那樣),載重為40 噸。由于當地貨運的限制,對C5,C6,C7類的包裝箱的總數有一個特別的限制:這類箱子所占的空間不能超過302.7cm。試把包裝箱裝到平板車上去使得浪費的空間最小。
1)考慮到包裝箱的總重量為89 噸,超過了兩輛平板車的負荷。故無法將所有的包裝箱裝入平板車。
2)考慮到一些不同種類的集裝箱的厚度相同(如C1和C5,C2和C6),最優方案可能不止一種。
3)該題目屬于整數線性規劃問題。
假設1:每輛平板車只疊一層包裝箱。
假設2:包裝箱之間沒有空隙。
根據題目要求建立以下整數線性規劃模型。其中:Z 為平板車總共浪費的長度;ti為單個集裝箱Ci的厚度(i=1,···,7);wi為單個集裝箱Ci的重量;ni為集裝箱Ci 的數量;kij為在平板車j (j=1,2)上放置的集裝箱Ci的數量。
使用Lingo11.0 對其進行求解,Z 為0.6cm,kij如表1 所示。
表1
4.2.1 使用MATLAB 求出所有解
由于集裝箱C1和C5,C2和C6的厚度相同,得出最優解Z=0.6cm的方案可能不止一種。通過Lingo11.0 得出所有方案的每種集裝箱的總數皆依次為8,7,9,6,3,3,0。因此利用上述結論,使用MATLAB 進行編程計算,得出15 組解如表2 所示。
表2
4.2.2 進一步優化
考慮到實際情況中,兩輛平板車的載重差應盡可能地接近,以提高安全系數,利用MATLAB 分別計算以上15 種方案的載重差,得出圖1。
圖1
通過觀察,發現15號、16號和26號的差值最小,為0。
綜合以上考慮,最終我們得出的最優解為:
表3
[1]卓金武.MATLAB 在數學建模中的應用[M].北京:北京航空航天大學出版社,2011.
[2]趙靜,但琦.數學建模與數學實驗[M].北京:高等教育出版社,2008.
[3]夏樂天.概率論與數理統計[M].南京:河海大學出版社,2011.