VTS系统船舶调度优化研究
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Step5:调整参数 w、c1、c2。 Step6:检查迭代次数 t 小于允许聚集迭代次数的下限值 Tg 和群体适应度方差小于最小 群体方差σmin2 两个条件,若都成立,则首先按式(2.3)引入第三活跃目标点,然后按 AEPSO 算法更新微粒的速度和位置。否则按标准 PSO 更新微粒的速度和位置。
(1.6) 其中 M>m,具体数值可以根据实际情况进行调整。本文取 M=2,m=1。 二、AEPSO 算法 (一)AEPSO 算法的参数调整 在 PSO 运行过程中,通常较好的策略是在算法开始阶段有较高的全局搜索能力,可以 对整个区域进行搜索[3]。而在算法运行后期却是较高的开发能力在某个局部区域继续优化而 得到个精度较高的结果。根据这一原则,微粒飞向自身最好位置方向的步长 c1 和飞向全局 最好位置的步长 c2 可以动态地表示为:
多峰性:具有大量局部极值点和多个全局极值点,容易验证算法的局部收敛和全局收 敛性;
欺骗性:具有误导搜索方向的梯度信息;
维度灾难:当问题维度增加时,优化的困难程度急剧增长。
本文选择了 Sphere 函数进行实验,结果如表 2.1
表 2.1 Sphere 函数中五种算法的比较
维度 算法
PDAPSO
EPSO 10
VTS 系统船舶调度优化研究 2010 年 10 月 28 日
摘要:文中在综合考虑了船舶航行安全因素和航运效率的情况下,采用基于海面能见 度、风速、水流、引航和船舶尺度等因子进行加权的方式来评价调度方案,并建立了一个数 学模型。验证模型通过调度参数的设定和调整可以得到最佳的调度方案。
关键词:船舶交通服务(VTS);船舶调度;微粒群算法(PSO)
一、船舶调度优化模型的建立
建立模型,我们首先考虑可见度对船舶安全的影响。我们通过利用一个数值 Security 来衡量船舶的危险程度,Security 高,则说明船舶的危险程度高,Security 低,则说明船 舶的危险程度低。其中 Security 和海面可见度的关系如下:
其中, S:表示所有船舶的集合; b:表示所有泊位的集合; m:表示船舶是否驶入港口预定泊位,
图 3.2:调度过程适应值变化情况 (2)实验结果分析 从图 3.2 可以看出,在算法运行过程中,调度函数适应值不断减小,在算法运行前期 (0-100 代),适应值变化幅度比较大,在全局范围内寻找最优点;在算法运行中期(100-300 代),适应值变化幅度变小;在算法运行后期,适应值仅仅发生微小变化,即微粒在局部优 化区域内继续寻优,最终产生调度方案。 参考文献: [1]唐强荣.VTS 系统结构模型[J].广州航海高等专科学校学报,2001,(2) [2]谢小良,符卓.基于 Hopfield 神经网络的单周期船舶调度模型及算法[J].微电子学 与计算机,2008,(10):110-116.
Step7:检查结束条件(一般为足够好的适应度值或达到一个预设的最大代数),若满 足,则寻优结束,否则,返回 Step2。
(四)AEPSO 的仿真实验和数据分析
为了分析与检验微粒群算法的性能,一般可以采用 BenchMark 测试函数。BenchMark 测试函数具有使优化过程非常困难的特性,包括:
当船舶航行速度较大时,船舶的工作效率较快,而当船舶的航行速度较小时,船舶的 工作效率较慢。
vi:表示第 i 条船舶的规模系数;
(1.3)
Q:表示一个常量,可以根据实际进行调整,这里设定为 30000; 同样,每个船舶的效率问题应当根据船舶的大小不同而有不同的评价。船舶的规模同 样由船舶的载重量作衡量。
(1.4) 其中, Ki1:表示第 i 条船舶的规模系数; 通过式(1.2)和式(1.4)得到船舶速度调度评价值:
(1.5) 为了突出船舶安全的重要性,公式采用加权方式,即安全因素代表一定的数值,效率 因素代表定的数值,最后把这两个数值相加。为了区分这两个值的重要性,可以把式(1.5) 更新为式(1.6):
其中 Pα为活跃目标点,Pg 为全局最优微粒点;c 为常数;r 为(0,1)间的随机数。 则此时的微粒群公式为:
(2.4) (三)AEPSO 的算法流程
AEPSO 算法步骤可以描述如下: Step1:设定最小群体方差σmin2、允许聚集的迭代次数的下限值 Tg、惯性权重的变化范 围、加速常数的变化范围等参数,将进化代数置为 1,随机初始化一群微粒(群体规模为 N) 的位置和速度。
Weighti:表示船舶的吨位; Ki2:表示第 i 条船舶的乘员人数规模系数,
Sailorsi:表示船舶乘员人数;
如果单独考虑船舶的安全而忽视船舶的效率问题,单纯通过式(1.2)可以得出,当每条 船舶的航行速度为 0 时,船舶能够达到绝对安全,但这显然是不符合实际的。因为船舶的出 现就是为了能够进行货物和产品的流动[2],从而创造出社会和经济价值,仅仅因为安全问题 而把所有的船舶停航,恰恰是和船舶航运所要达到的主要目的相反。所以在考虑船舶安全的 同时,我们也要考虑船舶的工作效率问题,让船舶在一个相对合理的速度范围内航行。
(1)选取船舶进港日期,确定所需调度的船舶及对应船舶的信息。这里抽取进港日期 为“2009-02-22”的船舶进行实验。
(2)对当天的港口环境作出判断,填入参数。这里取可见度情况为“可见程度低”, 风浪情况为“小风浪”,水流情况为“水流情况一般”,拖轮和引航员的数量各为 15。
(3)虽然目前对于船舶进港速度的限制并没有一个具体的要求,没有在进港安全速度 上有明确规定,但是根据统计显示,一般情况下船舶进港的速度基本都是在 10-12 节的范围 内。本文将所有船舶的进港速度在(10-12)节的范围内随机取值,即按照式(3.1)取得各 船舶的速度:
三、AEPSO 算法在 VTS 系统船舶调度的应用 (一)VTS 系统船舶调度问题微粒群优化算法 基于 AEPSO 算法的船舶调度流程如图 3.1 所示:
图 3.1:AEPSO 算法的船舶调度流程
(二)VTS 系统船舶调度问题Байду номын сангаас实验和分析
1.实验参数设置
在进行微粒群算法实验之前,需要进行一些参数的设定。
(2.1)
(2.2)
其中,t 为搜索时间,T 为周期,C1min 和 C2min 为最小步长,C1max 和 C2max 为最大步长。 (二)AEPSO 算法的第三参考点选择
本文对引入的第三活跃点进行如下设置:当适应度方差小于一个定值时,说明微粒群 过早收敛,引入第二参考点。第三点的设置如下:
(2.3)
(1.1)
Vi:表示第 i 条船行驶的速度; W:表示海面可见度的系数,具体设置为:
考虑到其他的因素[1],得到 Security 的表达式: (1.2)
其中,gi:表示第 i 条船舶遭受的风浪影响系数,船舶规模主要由船舶的吨位来衡量; f:表示风浪的大小系数; l:表示水流环境对船舶的影响系数; ti:表示拖轮对第|条船的影响系数; yi:表示引航员对第 i 条船的影响系数; ci:表示第 i 条船的国籍; di:表示第 i 条船的长度; ki1:表示第 i 条船舶的规模系数,
[3]邬晓强.浅谈现代港口的调度管理工作[J].水运管理,2001,(6):1-2. 作者:刘俭,王福斋 来源:中国海事
AEPSO
MPSO
PDAPSO
EPSO 20
AEPSO
MPSO
最优值 9.289e-7 8.509e-15 1.775e-59 2.235e-13 41.83 31.86 5.24e-53 3.95e-8
最差值 0.652 0.051 2.603e-42 1.350e-7 633.21 1366.33 1.28e-43 0.002
Step2:根据选择好的适应度函数计算每个微粒的适应值。
Step3:对于每个微粒,将其当前适应度值与其所经历过的最好位置 Pi 的适应度值进行 比较,如果前者较好,则将这个微粒的位置作为当前的最好位置。
Step4:对于每个微粒,将其当前的适应度值与全局所经历过的最好位置 Pg 的适应度值 进行比较,如果前者较好,则将这个微粒的位置作为当前的全局最好位置。
(3.1)
其中 i=1,2...,L;L 为当天进港的船舶数量;random 是个系统自动生成的范围,为 (0,1)的随机数。
2.实验结果和分析 (1)实验结果根据之前设定的微粒群算法的参数和所有入港船舶的相关数据,可以得 到最优值 Value=6970468.05。 算法运行过程中,微粒不断地寻找最优点的位置,船舶速度不断地进行优化,所得到 的适应值变化情况如图 3.2 所示:
平均值 0.044 0.005 3.778e-45 1.092e-9 253.7 287.1 3.40e-45 5.10e-5
达标率 70% 91.05% 100% 100% 0.0 0% 100% 100%
CPUB 才间(s) 150.0 172.3 775.0 155.7 92.5 184 922 157.6
(1.6) 其中 M>m,具体数值可以根据实际情况进行调整。本文取 M=2,m=1。 二、AEPSO 算法 (一)AEPSO 算法的参数调整 在 PSO 运行过程中,通常较好的策略是在算法开始阶段有较高的全局搜索能力,可以 对整个区域进行搜索[3]。而在算法运行后期却是较高的开发能力在某个局部区域继续优化而 得到个精度较高的结果。根据这一原则,微粒飞向自身最好位置方向的步长 c1 和飞向全局 最好位置的步长 c2 可以动态地表示为:
多峰性:具有大量局部极值点和多个全局极值点,容易验证算法的局部收敛和全局收 敛性;
欺骗性:具有误导搜索方向的梯度信息;
维度灾难:当问题维度增加时,优化的困难程度急剧增长。
本文选择了 Sphere 函数进行实验,结果如表 2.1
表 2.1 Sphere 函数中五种算法的比较
维度 算法
PDAPSO
EPSO 10
VTS 系统船舶调度优化研究 2010 年 10 月 28 日
摘要:文中在综合考虑了船舶航行安全因素和航运效率的情况下,采用基于海面能见 度、风速、水流、引航和船舶尺度等因子进行加权的方式来评价调度方案,并建立了一个数 学模型。验证模型通过调度参数的设定和调整可以得到最佳的调度方案。
关键词:船舶交通服务(VTS);船舶调度;微粒群算法(PSO)
一、船舶调度优化模型的建立
建立模型,我们首先考虑可见度对船舶安全的影响。我们通过利用一个数值 Security 来衡量船舶的危险程度,Security 高,则说明船舶的危险程度高,Security 低,则说明船 舶的危险程度低。其中 Security 和海面可见度的关系如下:
其中, S:表示所有船舶的集合; b:表示所有泊位的集合; m:表示船舶是否驶入港口预定泊位,
图 3.2:调度过程适应值变化情况 (2)实验结果分析 从图 3.2 可以看出,在算法运行过程中,调度函数适应值不断减小,在算法运行前期 (0-100 代),适应值变化幅度比较大,在全局范围内寻找最优点;在算法运行中期(100-300 代),适应值变化幅度变小;在算法运行后期,适应值仅仅发生微小变化,即微粒在局部优 化区域内继续寻优,最终产生调度方案。 参考文献: [1]唐强荣.VTS 系统结构模型[J].广州航海高等专科学校学报,2001,(2) [2]谢小良,符卓.基于 Hopfield 神经网络的单周期船舶调度模型及算法[J].微电子学 与计算机,2008,(10):110-116.
Step7:检查结束条件(一般为足够好的适应度值或达到一个预设的最大代数),若满 足,则寻优结束,否则,返回 Step2。
(四)AEPSO 的仿真实验和数据分析
为了分析与检验微粒群算法的性能,一般可以采用 BenchMark 测试函数。BenchMark 测试函数具有使优化过程非常困难的特性,包括:
当船舶航行速度较大时,船舶的工作效率较快,而当船舶的航行速度较小时,船舶的 工作效率较慢。
vi:表示第 i 条船舶的规模系数;
(1.3)
Q:表示一个常量,可以根据实际进行调整,这里设定为 30000; 同样,每个船舶的效率问题应当根据船舶的大小不同而有不同的评价。船舶的规模同 样由船舶的载重量作衡量。
(1.4) 其中, Ki1:表示第 i 条船舶的规模系数; 通过式(1.2)和式(1.4)得到船舶速度调度评价值:
(1.5) 为了突出船舶安全的重要性,公式采用加权方式,即安全因素代表一定的数值,效率 因素代表定的数值,最后把这两个数值相加。为了区分这两个值的重要性,可以把式(1.5) 更新为式(1.6):
其中 Pα为活跃目标点,Pg 为全局最优微粒点;c 为常数;r 为(0,1)间的随机数。 则此时的微粒群公式为:
(2.4) (三)AEPSO 的算法流程
AEPSO 算法步骤可以描述如下: Step1:设定最小群体方差σmin2、允许聚集的迭代次数的下限值 Tg、惯性权重的变化范 围、加速常数的变化范围等参数,将进化代数置为 1,随机初始化一群微粒(群体规模为 N) 的位置和速度。
Weighti:表示船舶的吨位; Ki2:表示第 i 条船舶的乘员人数规模系数,
Sailorsi:表示船舶乘员人数;
如果单独考虑船舶的安全而忽视船舶的效率问题,单纯通过式(1.2)可以得出,当每条 船舶的航行速度为 0 时,船舶能够达到绝对安全,但这显然是不符合实际的。因为船舶的出 现就是为了能够进行货物和产品的流动[2],从而创造出社会和经济价值,仅仅因为安全问题 而把所有的船舶停航,恰恰是和船舶航运所要达到的主要目的相反。所以在考虑船舶安全的 同时,我们也要考虑船舶的工作效率问题,让船舶在一个相对合理的速度范围内航行。
(1)选取船舶进港日期,确定所需调度的船舶及对应船舶的信息。这里抽取进港日期 为“2009-02-22”的船舶进行实验。
(2)对当天的港口环境作出判断,填入参数。这里取可见度情况为“可见程度低”, 风浪情况为“小风浪”,水流情况为“水流情况一般”,拖轮和引航员的数量各为 15。
(3)虽然目前对于船舶进港速度的限制并没有一个具体的要求,没有在进港安全速度 上有明确规定,但是根据统计显示,一般情况下船舶进港的速度基本都是在 10-12 节的范围 内。本文将所有船舶的进港速度在(10-12)节的范围内随机取值,即按照式(3.1)取得各 船舶的速度:
三、AEPSO 算法在 VTS 系统船舶调度的应用 (一)VTS 系统船舶调度问题微粒群优化算法 基于 AEPSO 算法的船舶调度流程如图 3.1 所示:
图 3.1:AEPSO 算法的船舶调度流程
(二)VTS 系统船舶调度问题Байду номын сангаас实验和分析
1.实验参数设置
在进行微粒群算法实验之前,需要进行一些参数的设定。
(2.1)
(2.2)
其中,t 为搜索时间,T 为周期,C1min 和 C2min 为最小步长,C1max 和 C2max 为最大步长。 (二)AEPSO 算法的第三参考点选择
本文对引入的第三活跃点进行如下设置:当适应度方差小于一个定值时,说明微粒群 过早收敛,引入第二参考点。第三点的设置如下:
(2.3)
(1.1)
Vi:表示第 i 条船行驶的速度; W:表示海面可见度的系数,具体设置为:
考虑到其他的因素[1],得到 Security 的表达式: (1.2)
其中,gi:表示第 i 条船舶遭受的风浪影响系数,船舶规模主要由船舶的吨位来衡量; f:表示风浪的大小系数; l:表示水流环境对船舶的影响系数; ti:表示拖轮对第|条船的影响系数; yi:表示引航员对第 i 条船的影响系数; ci:表示第 i 条船的国籍; di:表示第 i 条船的长度; ki1:表示第 i 条船舶的规模系数,
[3]邬晓强.浅谈现代港口的调度管理工作[J].水运管理,2001,(6):1-2. 作者:刘俭,王福斋 来源:中国海事
AEPSO
MPSO
PDAPSO
EPSO 20
AEPSO
MPSO
最优值 9.289e-7 8.509e-15 1.775e-59 2.235e-13 41.83 31.86 5.24e-53 3.95e-8
最差值 0.652 0.051 2.603e-42 1.350e-7 633.21 1366.33 1.28e-43 0.002
Step2:根据选择好的适应度函数计算每个微粒的适应值。
Step3:对于每个微粒,将其当前适应度值与其所经历过的最好位置 Pi 的适应度值进行 比较,如果前者较好,则将这个微粒的位置作为当前的最好位置。
Step4:对于每个微粒,将其当前的适应度值与全局所经历过的最好位置 Pg 的适应度值 进行比较,如果前者较好,则将这个微粒的位置作为当前的全局最好位置。
(3.1)
其中 i=1,2...,L;L 为当天进港的船舶数量;random 是个系统自动生成的范围,为 (0,1)的随机数。
2.实验结果和分析 (1)实验结果根据之前设定的微粒群算法的参数和所有入港船舶的相关数据,可以得 到最优值 Value=6970468.05。 算法运行过程中,微粒不断地寻找最优点的位置,船舶速度不断地进行优化,所得到 的适应值变化情况如图 3.2 所示:
平均值 0.044 0.005 3.778e-45 1.092e-9 253.7 287.1 3.40e-45 5.10e-5
达标率 70% 91.05% 100% 100% 0.0 0% 100% 100%
CPUB 才间(s) 150.0 172.3 775.0 155.7 92.5 184 922 157.6