遗传基因算法 如何应用,高分求解 ,分不够再加
我在工作中遇到这个的问题 多日不能自解,得知遗传基因算法是合适的解决方法 ,特前来求教 希望您赐教
公司要求将 散装货物 拼装到集装箱中, 这里不用考虑散装货物的不规则形状:
每一票散货 数据由下以内容组成
PO ------订单号
Item ------该订单中的一个item
cbm ------该票散货的 体积
kgs ------该票散货的 重量
Destination -------目的地
Clearance Mode -------清关区域清关
Custom Zone -------清关区域
Location --------工厂所在地
Factory --------工厂
Esd ---------工厂出货日期 [ESD,LSD] 合起来叫Shipping window
Lsd ---------到达目的地的日期
Mapp Date ---------- Mapp 日期
Depart No
要求是这样的
装在同一个箱子中的散货 必需具备以下条件
* 去同一个 Destination 目的地
* 在同一个 Custom Zone 清关区域清关
* 具有相同的 Clearance Mode 清关模式
* 最多不能超过四个不同的工厂(最多只能出现 小于等于 四个工厂的货
物)
* Shipping Window 必需至少有四天的重合
( eg : A货 [2007-06-17,2007-06-25] ,
B货 [2007-06-20,2007-06-28]
它们有四天以上的重合日期,
准确的说柜子中每票散货之间的Shipping Window都
应该有至少四天以上的重合日期
C货 如果与A货的Shipping window有四天以上重合,
但与B货的Shipping window没有四天以上的重合日期,
哪么C货只可能与A货装在同一个柜子里,
不能与B货装在同一个柜子里)
装在同一个箱子中的散货 最好是满足以下条件
相同的PO 最好能装在同一个柜子里 (一个 PO 可能因为有多个item 而多次出现)
相同的Location 最好能装在同一个柜子里 (这样可以节省运输费用)
ESD,LSD 全完相同的 最好能装在一个柜子里
//按照 以下柜型的先后顺序来装 (就是说将所有的散货 都装入HQ45的柜型中,如果最后没法装完就装入下一个柜型中)
对于每一种柜型要装多少个 没有限制 ,每次要装的散货是确定的 ,也就是说只要能将所有的散货都能装入HQ45的柜子
并使每柜子所装的货物的CBM> =75 且, <=77 ,Kgs <=19500 就表示可以接受 ,当然越接近最大的上限越高效)
//45 HQ CBM[75.000,77.000]
表示 HQ45 的柜子最少要求装 75.000
CBM 最多可装77.000 CBM ,
KGS <=19500.000 表示
HQ45的柜子最多不能超过19500.000 KGS
//40 HQ CBM[65.000,67.000] KGS <=19500.000
//40 GP CBM[56.000,58.000] KGS <=19500.000
//40 HQ DRY CBM[52.000,53.000] KGS <=19500.000
//20 GP CBM[28.000,29.000] KGS <=17500.000
因为接触这个问题,而找到遗传基因算法,同时找到了您的Blog,
面对目前的问题我真诚的希望您能百忙之中能帮我这个陌生的同行走去困境。
[解决办法]
不知道他在跟那个说话
[解决办法]
不好做的东西就穷举 + 一定的分支限界(这个美名叫启发式)
[解决办法]
AI这里 一个月有个3贴发布就不错了.
你来错地方了.
这里的活动很少.
建议到GOOGLE查些老外的AI网站
说不定能对你有些帮助.
我看了看也帮不了你什么.呵呵.
初学者.
能帮你的就只能说.在老美的论坛问问题.你是觉得能够得到帮助的.
我只能给你提供这些帮助了
[解决办法]
我来检点分了,呵呵
本来我曾做过很多遗传算法的东西的,不过你这个问题描述太复杂了,把人都要看晕~~~~~~
要是你把它简化一下的话,可能回答的人就要多得多了。
只是简单看了一下你的描述,应该就是把一些东西放到一个体积重量有限的容器中,只有时间、重量和体积约束,没有形状的约束吧?
那么用遗传算法解决的话,就把每个货物是否装入某容器用01表示出来,这就是基因,然后就可以用遗传算子进行操作。至于具体操作,就要写很多了,最好还是自己去找书或者论文吧,很多这方面的介绍的。对于你这个问题的另一个需要完全靠自己解决的部分就是适应值函数的定义,也就是怎样评价一种方案好不好,最简单的方法就是将需要容器的空间或者重量利用率作为指标,并用罚函数处理约束条件。
我上面主要说了两点,这两点是你这个问题与其它问题不同的地方,剩下的部分,就是解决各种问题的遗传算法都一样地地方了,这个都有现成的资料的,你就自己去查吧,这些东西几千字之类要给你说明白是不可能的
[解决办法]
我给你发了点参考代码过来,不过我马上就要回家了,所以没办法继续帮助你。。。