露天矿生产的车辆安排.docx

上传人:b****7 文档编号:9250464 上传时间:2023-02-03 格式:DOCX 页数:22 大小:116.72KB
下载 相关 举报
露天矿生产的车辆安排.docx_第1页
第1页 / 共22页
露天矿生产的车辆安排.docx_第2页
第2页 / 共22页
露天矿生产的车辆安排.docx_第3页
第3页 / 共22页
露天矿生产的车辆安排.docx_第4页
第4页 / 共22页
露天矿生产的车辆安排.docx_第5页
第5页 / 共22页
点击查看更多>>
下载资源
资源描述

露天矿生产的车辆安排.docx

《露天矿生产的车辆安排.docx》由会员分享,可在线阅读,更多相关《露天矿生产的车辆安排.docx(22页珍藏版)》请在冰豆网上搜索。

露天矿生产的车辆安排.docx

露天矿生产的车辆安排

露天矿生产的车辆安排

摘要

本文为解决露天矿生产的车辆安排问题,分别就不同的优化目标建立了优化模型.

文章首先定义了服务点(即铲位和卸点)的时间占用率的概念,将车辆不等待的条件转化为使服务点的时间占用率小于100%的量化形式,并分析了该量化形式的合理性.

然后根据限制条件和不同的优化目标分别建立规划模型.以快速启发式搜索结合Matlab的优化函数的方式,分别得出相应优化目标下的优化结果:

在以总运量最小为目标时,同时出动的车辆最少,优化结果为:

出动7辆铲车,总运量为8.53万吨公里,岩石产量为3.2万吨,矿石产量为3.8万吨,需出动13辆车以及相应的线路分配和铲位分配.

在以岩石产量优先,同时总运量最小为目标时,优化结果为:

出动7量铲车,总运量为1.73万吨公里,岩石最大产量为4.54万吨,总产量为8.73万吨.需出动20辆车以及相应的线路分配和铲位分配.

在文章最后给出了简单有效的卡车安排的算法,并以此方式分别得到了两个目标下卡车运输线路调配方案.

露天矿生产的车辆安排

一问题的提出

露天采矿主要是由电动铲车(以下简称电铲)装车、电动轮自卸卡车(以下简称卡车)运输来完成的,提高这些大型设备的利用率是增加经济效益的首要任务.矿区里有若干石料堆,每堆称为一个铲位,每个铲位已预先将石料分成矿石和岩石,且矿石中的含铁量已知.卡车每次只能运岩石或矿石中的一种.

卸货地点(以下简称卸点)中矿石漏和2个倒装场用来卸矿石,岩石漏、岩场用于卸岩石,每个卸点都有各自的产量要求,另外卸矿石的卸点含铁量受到限制(在一个班次8小时内矿石中铁的平均含量为29.5%±1%).

每个铲位至多能安置一台电铲,一个班次中铲位以及卸点的位置不变,电铲的平均装车时间为5分钟.

卡车的平均卸车时间为3分钟,载重量为154吨,且每次都满载运输,平均时速28

,路上不会堵车,只在开始工作时点火一次,为减少能耗,原则上在安排时不应发生卡车等待的情况.电铲和卸点同时只能为一辆卡车服务.

针对一个班次,设计一个生产计划,包含:

1.出动几台电铲,分别在哪些铲位上.

2.出动几辆卡车,分别在哪些路线上各运输多少次.

3.要求卡车不等待.

4.满足产量和质量(品位)要求.

在以上约束条件下,分别就以下两个目标建立模型,并给出快速算法,同时以给出数据给出具体生产计划,相应的总运量及岩石和矿石产量:

1.总运量(吨公里)最小,同时出动最少的卡车.

2.利用现有车辆运输,获得最大的产量(岩石产量优先;在产量相同的情况下,取总运量最小的解).

二符号说明及名词定义

Lij:

从第i个卸点到第j个铲位这条路线,其中i=1,2,…5,分别代表矿石漏,倒装场Ⅰ,岩场,岩石漏,倒装场Ⅱ;j=1,2,3…10,分别代表铲位1~10.

V:

卡车的速度(28km/h).

sij:

Lij的距离(单位:

公里).

xij:

分配到Lij上的卡车数(单位:

辆).

tij:

卡车在Lij上来回一趟需要的时间(单位:

分钟),tij=5+3+2×60×Sij/V.

Bj:

第j个铲位的矿石量(单位:

t).

第j个铲位的岩石量(单位:

t).

ρj:

第j个铲位矿石的含铁量百分比.

Ci:

第i个卸点的产量需求.

[x]:

对x取整,即:

取不大于x的最大整数.

Nij:

一辆卡车,在一个班次中,在路线Lij能运的最大趟数,在后文中简称路线Lij上的单车运输趟数,Nij=[8×60/tij]=[480/tij].

Pij:

从路线Lij来的所有车,总共跑的趟数,在后文中简称路线Lij上的总趟数,Pij=Nij×xij.

时间占用率:

运行在这条路线上的车占用相应服务点的时间与运行周期之比

三问题的分析

首先明确题目中的几个概念和约束条件:

总运量(吨公里):

运载的矿石或岩石的质量与运载它所经过的路程的乘积.

铲位的确定:

一共有7个铲车10个铲位,铲车在一个班次中可以调动位置,但是由于铲车的调度会引起很多路线的变化,从而大大增加调度的困难,并且我们发现在一个班次中,铲车的调度对总运量没有太大影响.可以认为铲车在一个班次中不能移动位置,这就需要找到一种方式确定7个铲位的位置.可以先根据品位要求确定一些必须选定的铲位.然后再根据要求,使用启发式搜索寻找最优的铲位安排.

满足产量要求:

使得每个卸点的产量不小于要求量,为硬性约束.

满足质量要求:

使一个班次内的平均含铁量在品位要求内,此为硬性约束.

某条线上的卡车数:

某条线上需要分配的卡车数,但具体的卡车可以变动,也就是说卡车可以在一条路线上先工作一段时间,然后再到另一条路线上工作一段时间.因此反映到卡车数上时,则表现为每条路线上分配卡车数不一定为整数.比如说某条路上有1.3辆车,则表示有一辆车在该路上工作一个班次,而另一辆车在该路线上只工作0.3班次,然后被调到了别的路线上.

卡车不等待:

为了满足卡车不等待条件,可以从两种方面入手:

一.安排时间;二.找一个量化的标准,使得达到这个量化指标时,卡车在理论上可以不等待.

要从时间安排上使得在一个较长的时间内让卡车不等待,有两种方式:

一.在一段时间内,只有一条路线向某一卸点或铲位(以后统称为服务点)运矿或采矿,当一条路线采矿结束后转向另一条路线,称为单线运输;二.找到一个运行周期,使所有卡车经过此周期以后,运作状态与当前一样,这种运行方式称为周期运行.

首先考察单线运输的可行性:

路线Lij上一辆卡车往返一趟需要的时间为:

tij=8+2sij/V(分钟)

其中8分钟为卸载和装载所需要的时间,2sij/V为卡车在路长为sij的路线上往返行驶次一趟的所需的行驶时间.由于在铲点需要等待5分钟,为了不让铲点等待,路线上最多能运行的卡车数Jij=[tij/5],其中[x]表示:

取不大于x的最大整数.而一辆卡车在路线上最多能运行趟数Nij=[480/tij],所以路线Lij上的最大运载量:

Qij=154×JijNij(吨).

各路线上的最大承载量如表一:

表一:

每条路上的最大运载量(单位:

吨)

卸点1

卸点2

卸点3

卸点4

卸点5

铲位1

13860

13398

12936

13552

13090

铲位2

13860

12012

12936

13860

11704

铲位3

13860

13398

12936

10780

12320

铲位4

14630

11396

13090

13860

13552

铲位5

14168

10780

12320

11088

12474

铲位6

11088

12474

12320

11550

14168

铲位7

11550

10164

11550

13860

12936

铲位8

13398

12936

11550

12320

9856

铲位9

13552

13552

11704

12320

10780

铲位10

10780

12320

13860

12936

14476

可以看出,对于卸点4:

岩石漏,任意路线在一班次中的最大运载量小于它的需求量1.9万吨,即使让r(0

然后考察周期运行的可行性:

在路线Lij上往返运输一次需要的时间tij情况,见表二:

表二:

路线上往返运输一次需要的时间(单位:

分)

卸点1

卸点2

卸点3

卸点4

卸点5

铲位1

30.54

16.14

33.24

10.74

26.94

铲位2

30.24

12.24

32.04

15.54

24.54

铲位3

26.04

16.14

32.04

13.44

23.94

铲位4

25.14

12.84

27.54

15.84

21.54

铲位5

20.64

13.44

23.04

19.74

17.64

铲位6

19.74

17.64

23.64

19.14

20.04

铲位7

18.54

14.34

18.54

26.04

11.34

铲位8

16.14

16.74

18.54

23.94

14.94

铲位9

10.74

21.24

12.54

29.64

13.44

铲位10

13.44

23.04

34.14

34.14

10.14

由表二可以看出,任意两个时间之间不存在倍数关系,所以无法形成一个周期性的运转的安排方式.所以周期性运行不可行.

因此用时间安排的方式来约束“车辆不等待”条件的方式不可行,所以在建立模型时只需要找一个量化的标准,使得达到这个量化指标时,卡车在理论上可以不等待.

由于每个服务点在每个时刻只能处理一辆卡车,所以等待只可能发生在服务点处,所以不等待的量化约束可以主要针对每个服务点在进行量化约束,具体方式在模型的建立中将详细说明.该约束条件是硬性约束.

快速算法:

针对模型给出思维简单,实现容易的解法.

对于问题中的两个优化原则,作如下分析:

总运量最小,同时出动的卡车最小:

在总运量最小的前提下满足卡车数最小.所以总运量最小是目标函数,卡车数最小由调度方式协调.该原则是一个单目标规划问题.

岩石产量优先,在产量相同的情况下,取总运量最小:

在满足每个卸点产量和品位要求的前提下,首先使岩石的产量最大,然后使总产量最大,而在岩石、矿石产量保持最大的情况下,搜索总运量最小的分配方式.该原则为一个多目标规划问题.

由以上分析,根据题目要求建立两个最优化模型.

四基本假设

(1)卡车改变路线的时间忽略不计.

(2)卡车每趟都是满载.

(3)铲车在一个班次中,位置不能移动.

(4)卡车在一个班次中,可以对多条路线服务.

五模型的建立

一约束条件的确定

Ⅰ车辆要求

由于总的车辆只有20辆,所以每条线上分配的车辆数之和小于20,因此车辆限制的数学表达为:

(i=1,2,…5;j=1,2,…10)

(1)

Ⅱ量化“卡车不等待”

在调度的过程中,每个服务点的时间是有限的,每辆车无论在装载和卸载时,都要占用服务点的时间;而每个服务点都是为多条路线服务的.由于已知服务点不能同时为两辆及两辆以上的卡车服务,于是在计算过程中,引入了时间占用率的概念.

对于每条路来说,时间占用率是运行在这条路线上的车占用相应服务点的时间与运行周期之比,铲点为5/tij,卸点为3/tij.

对于每个服务点来说,时间占用率是与该服务点相连每条路线对该点的时间占用率之和.但是在本问题中,每条路能够容纳的车的数量是一定的,为[tij/5];而多余的时间都是一些较小的时间间隔,如果在此间隔中插入车辆,很容易引起卡车等待的情况,所以在这里取相应路上的每辆车对于铲点的时间占用率为

,而对于卸点的时间占用率为铲点的3/5,即:

例如,在路径Sij上,有xij辆卡车在运行,每次往返运行的时间tij=120/Sij+8(分钟),那么这条路上的最大容纳的车数是[tij/5],这条路对于铲点j的时间占用率为xij/[tij/5];对于卸点i的时间占用率为3xij/5[tij/5].对于每个铲点的时间占用率为:

而对于每个卸点的时间占用率为:

所以要保证卡车在装载时和卸载时不等待,每个点的总的时间占用率肯定要小于100%.则卡车不等待转化为:

(i=1,2…5;j=1,2…10)

(2)

Ⅲ产量要求

由题意可知,每个卸点都有对应的产量最低限,而对于每个卸点的产量就等于所有通向该点的路线上,在一个班次中运输的岩石或矿石量的总和.

一个班次中,每个路线上的运输量等于路线上的总趟数Pij乘以每辆卡车的载重量154吨.而Pij=Nij×xij,其中Nij为路线Lij上的单车运输趟数,Nij=[480/tij],所以综上条件,得到产量约束的数学表达:

(i=1,2,…5;j=1,2…10)(3)

Ⅳ品位要求

对于卸点1,2,5而言,要求矿石在一个班次内的平均含铁量在29.5%±1%以内,所以由混合原理得到总混合的表达式

(i=1,2,5;j=1,2,…10)

其中ρz表示某一矿石卸点的含铁量,而品位要求就是要使

28.5%≤ρz≤30.5%.(4)

Ⅴ岩石,矿石总量的上限

对于铲位j,都有一定的矿石Bj和岩石总量Bj’,在一个班次的安排中不能让从该铲位运出的矿石或岩石量不超过相应的Bj和Bj’;也就是每个铲位运向卸点1,2,5的量不大于对应的Bj,运向卸点3,4的量不大于Bj’,每个铲点的矿石和岩石量的上限要求的数学表示为:

(j=1,2,…10)(5)

Ⅵ铲位的限定

同时运作的铲位只能有7个,我们设置一个函数f(x),其中

所以铲位限制的数学表达为:

(6)

二目标函数的确定

Ⅰ模型一:

原则一:

总运量(吨公里)最小,同时出动最少的卡车.由于卡车出车数可以由调度来达到最优.所以本问题就是一个使总运量最小的单目标规划.其目标函数为:

(i=1,2…5;j=1,2…10)(7)

Ⅱ模型二:

原则二:

利用现有车辆运输,获得最大的产量(岩石产量优先;在产量相同的情况下,取总运量最小的解).所以本问题有三个目标函数,第一是岩石产量最大,第二是总产量最大,第三是总运量最小.这三个目标的优先级逐个减弱.其数学表达形式为:

目标一:

(8)

目标二:

(9)

目标三:

(10)

三模型的建立

综合分析以上所有的限制条件和目标函数,发现铲位限制不是线性约束,所以给模型为非线性规划问题.根据以上分析,分别就一二要求,建立规划模型:

模型一:

目标函数:

模型二:

目标函数:

它们的共同的约束条件为:

St.

六模型的求解

首先明确模型中关于铲位限制,模型二中的多目标规划以及车辆调配使得车辆数最小,这些问题的处理方式:

快速启发式搜索铲位限制:

以上模型由于铲位限制为非线性的,使得模型为一个非线性模型,这就使模型的求解很复杂.所以将铲位约束从模型中提出来,在模型外进行搜索判定,则模型转化为线性规划模型,可以直接调用Matlab中的命令求解(源程序见附件二).确定铲位的具体操作方式如下:

首先由品位限制,缩小搜索范围:

由所给数据可知,所有卸点的产量总和有7万吨.同时只有铲位2和铲位3的含铁量低于的品位要求,而其他的铲点都高于品位要求,因此铲位2,3中至少要选择一个,以满足品位要求.

然后以启发式搜索,来确定使目标函数最小的铲位安排方式.启发式搜索的具体方式将在模型一的求解中具体描述.

模型二中的多目标优先权的处理:

由题中要求首先以目标一:

岩石产量最大为目标函数,找到最大的岩石产量.然后以得到的最大岩石产量建立等式约束;以目标二:

总产量最大为目标函数,找到最大的总产量.最后以最大岩石产量和最大总产量建立等式约束;以目标三:

总运量最小为目标函数,找到最小的总运量.多目标处理与铲位限制的配合使用,将在模型二的求解中具体描述.

车辆调度:

由于每条路线的车辆数为小数,在安排具体的路线时,将对一部分卡车进行转场调整,其基本思想是利用计算机进行自适应搜索,程序思想是:

总的卡车投入数量为m;每条路的卡车需求量yij的初值为xij;每条路线的在同时运行的卡车数量为nij,初值为0,为非负整数;每辆卡车的运行时间占总时间的百分比为ak%(k=1,2…m),初值为0.

具体安排的算法:

Step1:

每条路线首先投入的卡车数量为[yij],nij=nij+[yij],m=m-∑∑[yij],所有投入运行的车的ak=100,yij=yij-[yij],然后计算每个服务点的时间占用率;

Step2:

搜索7个铲点中时间占用率最小的一个,然后搜寻与这个铲点相连接的所有的卸点时间占用率最小的一个,同时判断连接该铲点和卸点的卡车需求量yij是否为0,如为0,则取第二小的卸点,以次类推,在该条路线上投入一辆车,该车ak=ak+100yij,nij=nij+1,m=m-1,yij=0,重新计算各服务点的时间占用率;

Step3:

如m不为0,则转Step3,如m为0,那么初始的指派完成,输出此时的各个卡车的运行路线及时间,转Step4;

Step4:

搜索ak最小的卡车(假设其已经完成该条路线上的运输任务),将该路线上的卡车数量nij=nij-1,重新计算相应服务点的时间占用率;

Step5:

搜索7个铲点中时间占用率最小的一个,然后搜寻与这个铲点相连接的所有的卸点时间占用率最小的一个,同时判断连接该铲点和卸点的卡车需求量yij是否为0,如为0,则取第二小的卸点,以次类推,将该车立刻投入此路线的运输,ak=ak+100yij,nij=nij+1,yij=0,输出ak,和Lij重新计算相应服务点的时间占用率,如果还存在yij≠0,转Step5,如果所有的yij=0,算法结束.

综合上述问题的处理方式,求解模型一和模型二.

模型一:

采用启发式搜索结合Matlab中的线性规划命令,求解运量最小以及最佳铲位安排,方式如下:

Step1:

任意取7个铲位,满足铲位2,3种,至少有一个被选中.

Step2:

由Matlab求出最小运载量,以及每个铲位的生产量.

Step3:

找到产量最小的铲位,用没有选中的铲位逐个代替后,计算出最小运载量.如果有小于没有替换时的最小运载量,则用当前铲位代替原始铲位后,回到Step2;如果都大于没替换前的最小运载量,则结束搜索.

以这种启发式搜索,得到出动7辆铲车,分别指派到铲位1,2,3,4,8,9,10上,此时有最小总运量:

8.5万吨公里,共需要13辆车,所走的路线以及路线上需要的车次数如图一所示:

图一模型一的运输路线图

对13辆车进行调度,分别得到他们在一个班次中的运输路线如表三:

表三:

模型一中调用的13辆车的运输路线

车辆序号

各车运输的路线及运输时间的百分比(按先后顺序)

1

L1,8:

100%

2

L1,8:

100%

3

L2,2:

100%

4

L2,4:

100%

5

L3,9:

100%

6

L4,1:

100%

7

L5,10:

100%

8

L4,3:

100%

9

L4,3:

21%

L1,2:

79%

10

L2,4:

17%

L1,10:

10%

L5,10:

50%

L3,10:

23%

11

L3,9:

75%

L1,2:

8%

12

L5,2:

74%

L1,8:

12%

13

L4,1:

84%

L3,10:

16%

模型二:

首先以目标一:

岩石产量最大为目标函数,启发式搜索铲位和相应的最大岩石产量.这样可能得到不只一组铲位使得岩石产量最大.

然后以岩石产量等于最大岩石产量为等式约束,如果有不只一组铲位使得岩石产量取得最大,则在这些的铲位中,搜索使得总产量最大的铲位以及相应的最大总产量;如果只有一组铲位使得最大岩石产量最大,则直接在该组铲位上利用线性规划,搜索最大总产量.

最后以岩石量和总产量等于相应的最大值为等式约束,搜索使得总运量最大的铲位安排和车辆安排.

用以上方式搜索得到当派出7辆铲车,分别到铲位1,2,3,4,8,9,10时,有最大岩石量为4.54万吨,总产量为8.73万吨,总运量为17.3万吨公里,20辆车所走的路线以及路线上需要的车次数如图二所示:

图二模型二的运输路线图

这二十辆车在该班次的具体安排如表四:

表四:

模型二中调用的20辆车的运输路线

车辆序号

各车运输的路线及运输时间的百分比(按先后顺序)

1

L1,3:

100%

2

L1,8:

100%

3

L1,8:

100%

4

L2,2:

100%

5

L2,9:

100%

6

L3,3:

100%

7

L3,4:

100%

8

L3,4:

100%

9

L3,10:

100%

10

L4,1:

100%

11

L4,2:

100%

12

L5,3:

100%

13

L5,3:

100%

14

L2,6:

41%

L3,6:

3%

L2,5:

44%

L1,3:

8%

15

L4,4:

76%

L2,1:

23%

16

L4,1:

84%

L5,3:

11%

L4,2:

3%

17

L5,6:

61%

L3,3:

31%

L3,4:

6%

18

L3,7:

80%

L5,7:

20%

19

L1,5:

2%

L5,5:

37%

L3,4:

61%

20

L2,4:

43%

L2,2:

2%

L2,3:

11%

L4,2:

44%

七模型的评价与改进

1.本文通过建立最优化模型的方式将问题转化;为了避免穷举我们采用计算量较小的启发式搜索,考虑到算法的通用性,我们编制了一个Matlab函数,使得只要一输入铁矿的信息矩阵,很快就可以得出车辆的安排情况,而不用重新建立优化模型,整个过程不超过2秒,整个算法方便快捷,且思想简单.

2.本模型将不等待直接转化为对铲位和卸点的繁忙程度,在一定程度上具有一定的正确性.但无论我们对K值约束的多紧,这只是一个必要条件,只能说卡车不等待则一定满足这个条件,但满足这个条件卡车还是有可能等待.对此可以找一个不等待的从充要条件,或对卡车进行跟踪,建立新的模型.

八参考书目

[1]苏金明等编Matlab6.1实用指南[M].电子工业出版社,2002.

[2]张志涌、徐彦琴等编  Matlab教程[M].北京航空航天大学出版社,2001.

[3]钱颂迪等编  运筹学[M].清华大学出版社,2002.附件

附件一:

将矩阵转化为一个行向量

functiony=xiang(x)

%将矩阵转化为一个行向量

M12=x';M13=M12(:

);y=M13';

附件二:

启发式算法得出最优矿位组合和最小总运量

function[C,D]=time_piece(number)

S1=[5.26,5.19,4.21,4.00,2.95,2.74,2.46,1.90,0.64,1.27;1.90,0.99,1.90,1.13,1.27,2.25,1.48,2.04,3.09,3.51;

5.89,5.61,5.61,4.56,3.51,3.65,2.46,2.46,1.06,0.57;0.64,1.76,1.27,1.83,2.74,2.60,4.21,3.72,5.05,6.10;

4.42,3.86,3.72,3.16,2.25,2.81,0.78,1.62,1.27,0.50];

a1=[0.95,1.05,1.00,1.05,1.10,1.25,1.05,1.30,1.35,1.25]*10000;

b1=[1.25,1.10,1.35,1.05,1.15,1.35,1.05,1.15,1.35,1.25]*10000;

c1=[30,28,29,32,31,33,32,31,33,31]/100;

R1=[1.2,1.3,1.3,1.9,1.3]*10000;

t1=8+120*S1/28;%任意两点间一趟需要的时间

S11=S1(:

number);S12=S11';S13=S12(:

);S2=S13';

a2=a1(number);

b2=b1(numb

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 党团工作 > 其它

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1