箱子包裝問題名稱
I有固定數(shù)量的箱子,這些箱子本身沒有重量。每個箱子只能裝一定量的重量。并非所有的箱子都有相同的容量。I也有固定數(shù)量的物體,每個物體都有重量。不是所有的物
解答動態(tài)
讓$w
o$表示對象$o$的權(quán)重,讓$c
u b$表示箱子$b$的容量。
您可以將其解釋為作業(yè)車間調(diào)度問題。對應(yīng)的是,每個對象都是一個作業(yè),持續(xù)時間為$w\o$,每個箱子都是一臺機器,只能使用$c\u b$時間單位,$z$是makespan.
這也是瓶頸廣義分配問題的特例,其中成本僅取決于任務(wù)(對象),而不取決于代理(bin)。讓二進制變量$x{o,b}$指示對象$o$是否分配給bin$b$。問題是最小化$z$subject to\begin{align}\sum\u b x{o,b}amp;\text{for all$o$}\tag1\\\ sum\u w\u o x{o,b}amp;\text{for all$b$}\tag2\\\ sum\u w\u o x{o,b}&text{for all$b$}\tag3\\\\ end}{align}約束$(1)$將每個對象精確分配給一個對象箱子約束$(2)$強制執(zhí)行bin 容量$(3)$強制執(zhí)行minimax目標(biāo)。
在CPLEX CPOptimizer中,您可以依賴pack約束。
在docu中稍微更改模型心理狀態(tài):
使用CP;intm=2;int n=3;dvar int l[j in 1..m]in 0..10000;dvar int p[i in 1..n]in 1..m;dvar int nb;int w[1..n]=[i:1i in 1..n];//最小化權(quán)重最重的裝箱單最小化max(i in 1..m)l[i];服從{pack(l,p,w,nb);}assert nb==m-count(l,0); 給定s
l=[1 2];p=[1 2];nb=2;- End
免責(zé)聲明:
本頁內(nèi)容僅代表作者本人意見,若因此產(chǎn)生任何糾紛由作者本人負責(zé),概與琴島網(wǎng)公司無關(guān)。本頁內(nèi)容僅供參考,請您根據(jù)自身實際情況謹(jǐn)慎操作。尤其涉及您或第三方利益等事項,請咨詢專業(yè)人士處理。