发明名称 基于多目标建模优化的危化品运输调度方法
摘要 本发明公开了一种基于多目标建模优化的危化品运输调度方法,该方法包括分别建立路径长度、建立时间、车辆固定费用和风险模型;对四个子模型进行标幺化和加权处理,得到危化品运输优化调度的评价函数;采用自然数编码、递归产生初始种群、最优保存策略、改进的匹配交叉和连续三次交叉的改进遗传算法求解模型,最终得到运输路径短,配送效率高,配送车辆少,风险小的危化品运输最优路径。本发明同时考虑了四个目标,决策者可以根据自身需要设定不同的权值,由权值决定遗传算法的搜索方向,通过不断的迭代适应度值最终收敛从而得到最优路径。
申请公布号 CN103761588B 申请公布日期 2016.09.14
申请号 CN201410054886.8 申请日期 2014.02.18
申请人 重庆大学 发明人 宋永端;沈志熙;刘辉
分类号 G06Q10/04(2012.01)I;G06Q50/28(2012.01)I 主分类号 G06Q10/04(2012.01)I
代理机构 重庆博凯知识产权代理有限公司 50212 代理人 穆祥维
主权项 基于多目标建模优化的危化品运输调度方法,其特征在于,该方法包括如下步骤:1)将路线长度、时间、车辆固定费用和风险作为优化指标,分别对其进行建模:a、路线长度模型:根据配送中心和客户的地理位置及其路径信息得到总的配送距离;b、时间模型:由超时惩罚来实现;c、车辆固定费用模型:对所有出动车辆的人力成本和设备养护费求和;d、风险模型:风险大小着重于概率和损失的计算,一旦事故发生,则从配送中心另派一辆车进行紧急救援,完成配送任务;2)建立评价函数模型,对各个目标进行标幺化和加权处理,得到总的评价函数;3)确定用遗传算法求解模型,包括步骤4)至步骤7);4)参数编码:采用自然数编码,用矢量(i<sub>1</sub>,i<sub>2</sub>,…,i<sub>n</sub>)表示客户基因序列,将染色体表示为:(0,i<sub>1</sub>,i<sub>2</sub>,…,i<sub>s</sub>,0,i<sub>1</sub>,i<sub>2</sub>,…,i<sub>t</sub>,0,…,0,i<sub>1</sub>,i<sub>2</sub>,…,i<sub>k</sub>,0),车辆从配送中心出发,第一辆车从配送中心出发执行i<sub>1</sub>,i<sub>2</sub>,…,i<sub>s</sub>路径并返回配送中心,形成路径1,然后第二辆车从配送中心出发执行i<sub>1</sub>,i<sub>2</sub>,…,i<sub>t</sub>路径并返回配送中心,形成路径2,如此反复直到所有客户都被访问;5)生成初始种群:采用递归调用,快速产生具有1000个染色体的初始种群;6)适应度函数设计:将适应度函数设计为评价函数的倒数;7)遗传算子的设计:a、选择:将适应度值排序,选择排在前500的染色体进行交叉、变异操作,利用最优保存策略保存排在前500的个体,尽量保持父代的优良性状;b、交叉:利用交叉概率P<sub>c</sub>=0.99,采用最大匹配交叉和连续三次交叉方法,一对父代产生六个子代;c、变异:将交叉产生的六个子代利用变异概率P<sub>m</sub>=0.6,采用反转法进行变异;8)代数n&lt;100,不断重复步骤7),最终得到最优路径;所述步骤1)和步骤2)中危化品运输优化调度的评价函数模型包括了路径长度L、时间E、车辆固定费用Q和风险R四个子目标模型,其中,<maths num="0001" id="cmaths0001"><math><![CDATA[<mrow><mi>L</mi><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mi>N</mi></munderover><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>0</mn></mrow><mi>N</mi></munderover><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></munderover><mrow><mo>(</mo><msub><mi>c</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><msub><mi>x</mi><mrow><mi>i</mi><mi>j</mi><mi>k</mi></mrow></msub><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000992076490000021.GIF" wi="630" he="207" /></maths>上式中:i=0,1,2,…,N;j=0,1,2,…,N;k=1,2,…,m;c<sub>ij</sub>为客户i到客户j的距离;N为客户数量;m为从仓库实际发出的车辆数;<img file="FDA0000992076490000022.GIF" wi="973" he="178" /><maths num="0002" id="cmaths0002"><math><![CDATA[<mrow><mi>E</mi><mo>=</mo><munderover><mi>&Sigma;</mi><mn>1</mn><mi>N</mi></munderover><msub><mi>E</mi><mi>i</mi></msub><mrow><mo>(</mo><mrow><msub><mi>E</mi><mi>i</mi></msub><mo>=</mo><mfenced open = "{" close = ""><mtable><mtr><mtd><mn>0</mn></mtd><mtd><mrow><msub><mi>s</mi><mi>i</mi></msub><mo>&le;</mo><msub><mi>T</mi><mi>i</mi></msub></mrow></mtd></mtr><mtr><mtd><mrow><msub><mi>e</mi><mi>i</mi></msub><mo>*</mo><mrow><mo>(</mo><mrow><msub><mi>s</mi><mi>i</mi></msub><mo>-</mo><msub><mi>T</mi><mi>i</mi></msub></mrow><mo>)</mo></mrow></mrow></mtd><mtd><mrow><msub><mi>s</mi><mi>i</mi></msub><mo>&gt;</mo><msub><mi>T</mi><mi>i</mi></msub></mrow></mtd></mtr></mtable></mfenced></mrow><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000992076490000023.GIF" wi="1078" he="215" /></maths>上式中:s<sub>i</sub>表示车辆到达客户i的时间,T<sub>i</sub>为客户i开始征收罚款的时间阈值;e<sub>i</sub>为配送车辆超过客户i的时间阈值的单位时间罚款,0表示仓库;Q=mc<sub>0</sub>上式中:m为实际配送车辆数,c<sub>0</sub>为一辆车的固定花费;<maths num="0003" id="cmaths0003"><math><![CDATA[<mrow><mi>R</mi><mo>=</mo><munderover><mo>&Sigma;</mo><mrow><mi>i</mi><mo>=</mo><mn>0</mn></mrow><mi>N</mi></munderover><munderover><mo>&Sigma;</mo><mrow><mi>j</mi><mo>=</mo><mn>0</mn></mrow><mi>N</mi></munderover><munderover><mo>&Sigma;</mo><mrow><mi>k</mi><mo>=</mo><mn>1</mn></mrow><mi>m</mi></munderover><mrow><mo>(</mo><msub><mi>p</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><msub><mi>c</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><msub><mi>x</mi><mrow><mi>i</mi><mi>j</mi><mi>k</mi></mrow></msub><mo>(</mo><mrow><msub><mi>w</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub><mo>+</mo><msub><mi>c</mi><mrow><mn>0</mn><mi>j</mi></mrow></msub><msub><mi>sign</mi><mrow><mi>i</mi><mi>j</mi></mrow></msub></mrow><mo>)</mo><mo>)</mo></mrow></mrow>]]></math><img file="FDA0000992076490000024.GIF" wi="1022" he="191" /></maths>上式中:i=0,1,2,…,N;j=0,1,2,…,N;k=1,2,…,m;w<sub>ij</sub>表示在客户i到客户j路段上发生事故时进行紧急投送和事故的成本,p<sub>ij</sub>从客户i到客户j路段上的事故概率;c<sub>0j</sub>表示配送中心到客户j的距离;<img file="FDA0000992076490000031.GIF" wi="1038" he="183" />然后,对四个子目标通过标幺化和加权处理得到最终的评价函数:<maths num="0004" id="cmaths0004"><math><![CDATA[<mrow><msup><mi>Z</mi><mo>*</mo></msup><mo>=</mo><msub><mi>&omega;</mi><mn>1</mn></msub><mfrac><mi>L</mi><msub><mi>L</mi><mi>max</mi></msub></mfrac><mo>+</mo><msub><mi>&omega;</mi><mn>2</mn></msub><mfrac><mi>Q</mi><msub><mi>Q</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub></mfrac><mo>+</mo><msub><mi>&omega;</mi><mn>3</mn></msub><mfrac><mi>E</mi><msub><mi>E</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub></mfrac><mo>+</mo><msub><mi>&omega;</mi><mn>4</mn></msub><mfrac><mi>R</mi><msub><mi>R</mi><mrow><mi>m</mi><mi>a</mi><mi>x</mi></mrow></msub></mfrac></mrow>]]></math><img file="FDA0000992076490000032.GIF" wi="1142" he="175" /></maths>上式中:ω<sub>1</sub>,ω<sub>2</sub>,ω<sub>3</sub>,ω<sub>4</sub>分别赋予4个目标不同的权重值,且有ω<sub>1</sub>+ω<sub>2</sub>+ω<sub>3</sub>+ω<sub>4</sub>=1,ω<sub>1</sub>,ω<sub>2</sub>,ω<sub>3</sub>,ω<sub>4</sub>∈[0,1];L<sub>max</sub>,E<sub>max</sub>,R<sub>max</sub>,Q<sub>max</sub>是根据遗传算法中原始的目标函数所求出的每代遗传算法每一代中对应目标的最大值。
地址 400044 重庆市沙坪坝区沙正街174号