编辑: 枪械砖家 | 2019-07-04 |
2 闸外编排的模型及其算法 设已确定的排档图有 N 条船 ,每条船从靠船墩 到闸室内的进闸顺序为 u(u =1 ,
2 , … , N), 每个进 闸顺序对应的船舶为 su , 用时为 T1 (su ).每条船从 锚地到靠船墩的指泊顺序为 v(v =1 ,
2 , …N),每个 指泊顺序对应的船舶为 sv , 用时为 T2 (sv).设靠船 墩处共可排船 L0 层 ,每层可停靠船舶数为 WL(L =
1 ,
2 , … , L0 ).l(sv )、w(sv)分别为指泊顺序为 v 的27 第1期肖恒辉,等:船舶调度闸外编排算法 船舶的长度和宽度. 设安全性指标为 S L(i , j) = δ (l(si) >
l(sj ) )
0 (l(si) =l(sj ) ) - δ (l(si) 0)
0 (x ≤0) 式中 : c, d ∈{ su } ;
l2 (c)、w2 (c)分别为船舶 c 在船闸 内的坐标位置;
L1 、 W1 分别为闸室长度与宽度. 上述闸外编排的数学模型归结为
2 个目标函 数、 多约束条件的规划问题, 是一个 N P- hard 问题 , 需要设计符合模型的算法来求解.本文根据模型的 目标和约束生成相应的闸外编排算法, 流程见图
3 . 图3中算法流程把进闸时间最小化和安全性指 标最大化作为目标, 将闸室内排档图作为初始输入 , 对船舶按照闸外编排的原则进行一定的调整, 找到 船舶在靠船墩的相应位置 ,从而生成闸外排档 .算 法流程图中 WL 是根据船舶能否找到合理位置而动 态生成的 ,同时 WL 受到安全性的约束 .每一层船 舶不能无限地增长下去, 需要根据静水航道能够提 供的宽度作为约束 ,在算法实现中可以取闸室宽度 为每一层能接受的范围.
3 闸外编排的实现 根据算法流程, 本文对图
2 进行闸外编排操作 : 先左右翻转,再上下翻转 ,重新编序与闸外编排[ 8] . 图3算法流程 Fig.
3 Algorithm flow 图4左右翻转实现的是先小船后大船排序, 图5上下翻转为闸外排档提供参照(先进闸的船舶将 拴系靠外),图6重新编制进闸顺序保证生成可排 入闸室的排档图(为了方便进闸 ,需兼顾先两边后 中间的排船方法[ 9] ), 图7闸外编排是考虑船舶在 静水航道靠船墩处的安全性[
1 0] (图7中的粗线表 示靠船墩所在), 最后根据闸外编排生成船舶的指 泊顺序. 图4左右翻转 Fig.
4 Inversion in right and left directions 图5上下翻转 Fig.
5 Inversion in up and dow n directions 从表
1 可以看出每一层的进闸顺序和指泊顺........