prism packing是一个np难的问题,所以应该以启发式的方法解决这个问题。先启发式的one pass 做出来看到结果,把代码放到github上。
prism packing首先是结构体设计,先做凸的prism。结构体应该是prism的顺序点集,旋转角,移动的向量。(假设每个prism初始位置在原点。)
然后是用和bin packing相似的启发式方法。具体参考:三维装箱问题的组合启发式算法 (期刊) 软件学报 ,2007
这里先不进行模拟退火,直接得到结果,然后再松弛,模拟退火找全局优解,梯度下降找局部最优解。