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