有若干批货,要货物,体积各异。要装在若干个体积相同的火车皮内,求出用最少的车皮来完成此工作,(200分)

  • 主题发起人 主题发起人 wds1860
  • 开始时间 开始时间
W

wds1860

Unregistered / Unconfirmed
GUEST, unregistred user!
有这栏的算法(成熟的)吗,?
有若干批货,要货物,体积各异。要装在若干个体积相同的火车皮内,求出用最少的车皮来完成此工作,
核心就是模拟装车方案,即,给出一个方案,如何利用固定的空间,装最多的货物,把火车皮中的无法
利用的空隙减至最少?
 
装相问题,属于NPC问题。可以用改进的贪心算法,虽然不能得到最优解,但能得到一个次优解。
 
93年学数学模型时就有你要的算法。
赶快去找《数学模型》的书。
 
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1724544
 
既然车皮的体积相同,就可以用我的最优算法了 :)
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1588082
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1016791
稍加改进,在外层加一个递归,每装满一车,就将已装入的货物从数组中清除,直到货物
被全部装入即可。

to LeeChange:
真可惜,那个帖子在非技术问题板块... :)
 
to creation-zy:
呵呵,老大,如果在您老的板块是不是会加酷呀.呵呵.
 
跟这题几乎一样,程序都可以不改.
http://www.delphibbs.com/delphibbs/dispq.asp?lid=1758645
 
要小心,因为体积是一个三维量,和一维有不同。
大多数情况下要精确找最优解我以为是不可能的。
 
多人接受答案了。
 
后退
顶部