关于已知xy=-512,x+y=124求x和y的值

1.本发明涉及一种垃圾车辆低碳调度方法及系统,属于车辆调度技术领域。

2.全球人口增长和城市化的脚步不断加快,城市人口逐步集中,生活水平和环境有了较大的改变,伴随而来的便是越积越多的生活垃圾。2020年1月21日,位于日本东京的废弃物工学研究所发布的估算数据显示,全球一年产生的垃圾量将在2050年达到320亿吨,是2000年的4.2倍。垃圾的积累导致全球环境迅速恶化,co2的排放量也呈直线上升趋势。根据国际能源署(iea)的数据,2019年全球碳排放增长量约为330亿吨。面对这样巨大的压力和挑战,全球高度重视,许多地方政府开始实行固体废物综合管理(iswm)。他们主张开发一个整体的城市生活垃圾管理系统。该系统包括前端垃圾产生和终端垃圾处置,连接二者之间的则是垃圾运输,由此可见,运输环节在城市生活垃圾管理系统中起着关键作用。在垃圾处理成本中,运输成本占相当大的比例,如文献指出美国每年的垃圾处理费用总额约200亿美元,其中运输费用已超过100亿美元。此外,运输环节也是全球碳排放量增长的主要原因之一。综上,有必要对垃圾运输车辆的调度展开深入研究,以降低运输成本,减少环境污染。
3.车辆调度问题属于np难题,随着问题规模的增加,精确算法无法在有效时间获得满足要求的解,为此,学者们提出了群智能优化算法。kennedy和eberhart于1995年提出的粒子群算法(pso)便是其中的典型代表。自适应粒子群算法是粒子群算法的改进版本,它将垃圾车辆运输的问题信息与粒子群算法的结构特点相融合,该算法基本步骤如下:采用整数编码的方式,随机生成初始种群,按照消除时间和容量约束的解码方式对个体依次解码,计算每个个体的适应度值,确定个体的个体极值和全局极值;采用增强型局部搜索策略对解码后的个体进行精细搜索,根据问题的容量和距离信息,选择2-opt算法在种群解码后的个体周围进行局部挖掘,且为了防止过度的局部搜索导致种群多样性流失,仅对每个个体包含垃圾投放点个数最多的行程进行操作;采用基于贡献度的自适应学习策略,从快速收敛至全局最优解、增加种群多样性、探索新区域和开发个体最佳位置4个目的出发,设计4种具有不同优势的学习策略,基于贡献度的不同自适应地为每个粒子选择最适合的学习策略并生成子代粒子。传统粒子群算法求解垃圾车辆低碳车辆调度规划未利用问题特征,搜索极为盲目,收敛速度较慢,且传统粒子群算法具有易陷入局部最优,求解精度低等不足,综上,提出一种收敛效率更高且具有较强跳出局部最优能力的车辆调度规划方法极为必要。

4.本发明所要解决的技术问题是克服现有技术的缺陷,提供一种垃圾车辆低碳调度方法及系统,能够极大地提高算法的收敛速度,具有较强的跳出局部最优的能力,从而快速规划出一组碳排放量和总运输成本最少的车辆调度方案。
5.为解决上述技术问题,本发明提供一种垃圾车辆低碳调度方法,包括:
6.获取输入信息,包括:垃圾车辆需要服务的垃圾投放点数量n、垃圾投放点的坐标
信息、车场坐标信息、垃圾中转站坐标信息、每个垃圾投放点的垃圾量、垃圾车辆容量q以及司机的最大工作时长t
7.将输入信息输入到预先构建的基于自适应粒子群算法的垃圾车辆低碳调度优化模型,确定最优调度方案;
8.所述基于自适应粒子群算法的垃圾车辆低碳调度优化模型的优化目标为所规划的调度方案中车辆总的运输成本最少,基于自适应粒子群算法的垃圾车辆低碳调度优化模型的约束条件为所有车辆均从车场出发且仅出发一次、每个垃圾投放点只允许一辆车服务一次、每个垃圾投放点被服务时、一定会有一辆车从某个地点行驶到该垃圾投放点并从该点离开、所有车辆在垃圾中转站将垃圾全部排空、车辆在一次行程中的垃圾装载量不大于其容量限制以及每辆车的司机的工作时间不能超过规定的最大工作时长限制。
9.进一步的,所述将输入信息输入到预先构建的基于自适应粒子群算法的垃圾车辆低碳调度优化模型,确定最优调度方案,包括:
10.步骤1,设置自适应粒子群算法进化种群规模为n、邻域搜索最大规模y;最大评价次数为eva
、评价次数计数器eva=0;
11.步骤2,采用整数编码,随机生成n个个体,每个个体的编码均为一串由3~n之间整数组成的序列:
13.其中,xi表示垃圾投放点的标号,i=3,4,
,n,车场编号为1,垃圾中转站编号为2,垃圾投放点编号为3~n;
14.计算每个个体的目标值f(x):
其中,cf为每辆车的固定使用成本,uk表示第k辆车是否被使用,k表示车辆总数,
其中,cm为车辆行驶单位距离所花费的燃油成本,b表示一辆车所有的行程集合,d
为垃圾投放点i与垃圾投放点j之间的距离,表示第k辆车在第b次行程中是否经过路径(i,j),
表示车辆从垃圾投放点i行驶到j的碳排放量,fe为燃油排放参数,ce为碳税,表示第k辆车在第b次行程中是否服务垃圾投放点i,
为车辆从垃圾投放点i行驶到垃圾投放点j消耗的燃油量,具体计算方式如下:
其中,z表示车辆自重,l
表示车辆从垃圾投放点i行驶到j的载重,v表示车辆的行驶速度,α
和β分别是与路况和车型相关的参数,计算方式如下:
其中,a为车辆行驶加速度,g为重力加速度常量,θ
为从垃圾投放点i到垃圾投放点j这一路段的路面坡度,cr为滚动阻力系数,cd为牵引力系数,a为车辆正面表面积,ρ表示空气密度;
个体的适应度为f(x):
步骤3,采用增强型局部搜索策略对解码后的个体进行精细搜索,组成新的个体;
步骤4,对新的个体采用基于贡献度的自适应学习策略,自适应选择最符合粒子自身阶段的学习方式,生成子代粒子:
步骤5,根据优胜劣汰的规则在每次迭代中更新个体极值和全局极值;
则终止迭代,输出适应度最优的个体,该个体为规划好车辆调度方案,否则,eva相应增加,转步骤3。
进一步的,所述采用增强型局部搜索策略对解码后的个体进行精细搜索,组成新的个体,包括:
步骤31,通过消除时间和容量约束的解码方式对个体进行解码,得到垃圾车辆的调度方案;
步骤32,找出包含垃圾投放点数最多的行程所对应的车辆索引和行程索引;
步骤33,对包含垃圾投放点数最多的行程进行2-opt优化,有效打开在行程中的交叉路线;
步骤34,将优化后的行程与其余未被选择的行程按照顺序重新拼接,组成新的个体;在拼接过程中,根据车辆行程的终点分成两种情况:当行程的终点为中转站点,表明车辆在该行程中不会再前往车场,此时仅需去除行程中的出发点和垃圾中转站;当行程的终点为车场,则该车是前往垃圾中转站卸货继而再回到车场,此时需要去除该行程中的出发点、垃圾中转站以车场;
步骤35,输出实施增强型局部搜索策略后的新的个体。
进一步的,所述对新的个体采用基于贡献度的自适应学习策略,自适应选择最符合粒子自身阶段的学习方式,生成子代粒子,包括:
步骤41,设置m种学习策略;
步骤42,令每种学习策略的贡献度c
步骤43,对种群中各个新的个体ii分别通过轮盘赌选择确定学习策略learn(ii),根据learn(ii)生成新粒子npop(ii)并计算npop(ii)的目标值;
步骤44,将新种群中的新粒子依据目标值排序,得到粒子的排名向量r(ii);
步骤45,按照下式为第ii个新粒子分配权重w
,粒子排名越靠前,分配得到的权重
为第ii个粒子应该被分配的权重,r(ii)为第ii个粒子的排名;
步骤46,第kk种学习策略的贡献度按下式进行更新,
为赏罚因子,如果第ii个粒子通过第kk种学习策略适应度值有所提升,则sf
步骤47,更新并归一化第kk种学习策略选择概率的方法如下式所示
为第kk种学习策略选择概率,jj表示学习策略的下标,jj=1,2,...,m,ε=0.01为最小选择概率,用于保证每种学习策略都能有机会被选择;
步骤48,种群中的粒子通过选择不同的学习方式进行学习后,输出新生成的所有子代粒子npop、新粒子的目标值npopobj、学习策略的贡献度向量c和选择概率向量p。
进一步的,所述m种学习策略包括:贪婪式学习策略、多元式学习策略、探索式学习策略和利用式学习策略,
所述贪婪式学习策略为:将新的个体通过逆转变异产生变异个体,变异个体与个体极值通过贪婪交叉算子产生交叉个体一,将交叉个体一与全局极值再进行贪婪交叉,生成贪婪学习后的新个体;
所述多元式学习策略为:将新的个体通过多元变异算子产生变异个体,将产生的变异个体与个体极值进行部分映射交叉得到交叉个体一,将交叉个体1与全局极值进行部分映射交叉,生成多元学习后的新个体;
所述探索式学习策略为,将新的个体通过多元变异算子产生变异个体,将产生的变异个体与种群中适应度优于自身的任一粒子的个体极值进行部分映射交叉,生成探索学习后的新个体;
所述利用式学习策略为,将新的个体通过多元变异算子产生变异个体,将产生的变异个体与个体极值进行部分映射交叉,生成利用学习后的新个体。
进一步的,所述贪婪式学习策略,包括:
步骤411,确定需要交叉的个体x、个体极值x
步骤412,从非车场和非中转站的点中随机选择一点作为车辆服务的第一个垃圾投放点s,选择第一个垃圾投放点s在x
,在x中左侧垃圾投放点s
作为下个访问的候选集;
步骤413,在候选集{s
}中选择一个垃圾投放点s’,使得s’与s构成运输成本最少的路径段;
步骤414,如果s’∈{s
},执行步骤415,否则执行步骤416;
步骤415,从个体极值x
和个体x中删除s,将s’设为下一个出发点s,在s的左候选集{s
}中选择新的s’作为下一个前往服务的垃圾投放点,使得s’与s构成运输成本最少的路径段,重复执行s515,直至即生成新解x
步骤416,从个体极值x
和个体x中删除s,将s’设为下一个出发点s,在s的右候选集{s
}中选择新的s’作为下一个前往服务的垃圾投放点,使得s’与s构成运输成本最少的路径段,重复执行s516,直至即生成新解x
的贪婪交叉为例,将新解x
再一次进行贪婪交叉,生成新解;
步骤418,输出通过贪婪交叉算子的新个体。
进一步的,所述多元式学习策略包括:
步骤421,计算逆转变异、交换变异和插入变异的选择概率;
步骤422,基于轮盘赌方式选择变异方式的序号;
步骤423,如果选择逆转变异的序号,则对个体进行交换变异;
步骤424,如果选择交换变异的序号,则对个体进行逆转变异;
步骤425,如果插入变异的序号,则对个体进行插入变异;
步骤426,根据变异结果输出通过多元变异算子后的新个体。
一种垃圾车辆低碳调度系统,包括:
获取模块,用于获取输入信息,包括:垃圾车辆需要服务的垃圾投放点数量n、垃圾投放点的坐标信息、车场坐标信息、垃圾中转站坐标信息、每个垃圾投放点的垃圾量、垃圾车辆容量q以及司机的最大工作时长t
确定模块,用于将输入信息输入到预先构建的基于自适应粒子群算法的垃圾车辆低碳调度优化模型,确定最优调度方案;
所述基于自适应粒子群算法的垃圾车辆低碳调度优化模型的优化目标为所规划的调度方案中车辆总的运输成本最少,基于自适应粒子群算法的垃圾车辆低碳调度优化模型的约束条件为所有车辆均从车场出发且仅出发一次、每个垃圾投放点只允许一辆车服务一次、每个垃圾投放点被服务时、一定会有一辆车从某个地点行驶到该垃圾投放点并从该点离开、所有车辆在垃圾中转站将垃圾全部排空、车辆在一次行程中的垃圾装载量不大于其容量限制以及每辆车的司机的工作时间不能超过规定的最大工作时长限制。
一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行所述的方法中的任一方法。
一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行所述的方法中的任一方法的指令。
本发明所达到的有益效果:
(1)建立包含车辆容量、低碳、司机工作时长以及多行程等实际因素的垃圾清运多行程低碳车辆调度问题模型。该模型的特点是允许一辆车在车场、垃圾中转站和垃圾投放站点之间具有多个行程。此外,考虑了车辆在行驶过程中导致的环境污染问题,将碳排放量转化为碳排放成本并计入总成本。
(2)本发明采用一种基于自适应粒子群算法的垃圾车辆低碳调度方法,消除时间和容量约束的解码方式,使得解码后的解均为可行解,因此该算法的性能优于传统的粒子群算法。
(3)增强型局部搜索策略,对个体中包含垃圾投放点最多的行程进行局部搜索,提升算法求解精度的同时也避免了因为过度局部搜索而造成种群同化过快的现象。
(4)基于贡献度的自适应学习机制,为不同进化阶段的个体设计四种具有不同优势的学习策略:贪婪式学习、多元式学习、探索式学习以及利用式学习,依据它们在种群进化过程中贡献度的不同自适应地为个体分配恰当的学习策略,提升算法的搜索效率。
图1为本发明采用自适应粒子群算法的主体流程图;
图2为采用本发明自适应粒子群算法求解实例得到的最佳方案;
图3为采用本发明自适应粒子群算法与现有的求解垃圾清运问题的算法的最优方案在固定成本、燃油成本以及碳排放成本上的对比结果图。
下面结合附图对本发明作进一步描述。以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
通过对中国南京市江北新区绿环公司实地调研,得到公司服务的54个小区(标记为3-56)经纬度坐标,垃圾中转站(标记为2)和车场(标记为1)经纬度坐标,某日各小区的垃圾量。将所有点的经纬度坐标转化为平面直角坐标系坐标,如表1所示。垃圾车辆的容量限制为10t,司机最大时长限制为8h。
使用本发明提出的基于自适应粒子群算法求解实施例得到的最佳车辆调度方案,主体流程如图1所示,具体步骤如下:
s1,初始化。读取实例的输入信息(见表1);给出优化目标的定义,并设定约束条件。
设垃圾投放点的平面坐标信息{(a
)},问题的规模表示该问题包含n个点(车场编号为1,垃圾中转站编号为2,垃圾投放点编号为3~n),则不同点之间距离为欧式距离计算公式,其定义为:
表示垃圾投放点i与垃圾投放点j之间的距离;
优化目标“路径中产生的运输成本”定义为:
其中,f(x)包括固定成本c
在垃圾清运的过程中,车辆一旦被使用,将会产生相应的维护保养成本以及司机的薪酬成本。因此,完成一次垃圾清运产生的固定成本c
车辆在行驶过程中因为油耗产生燃油成本,燃油消耗效率往往受行驶速度、路况等因素影响。本文假定车辆在运输过程中路况稳定,速度均匀,车辆行驶单位距离产生的燃油成本是固定的。因此,所有使用车辆完成全部行程后产生的燃油成本c
由于温室效应的加剧,众多国家制定碳税制度来控制co2的排放。碳税是指对co2按排放量的大小收取相应费用。因此,所有使用车辆完成全部行程后产生的碳排放成本c
其中,fe为燃油排放参数,ce为碳税,cm为车辆行驶单位距离所花费的燃油成本,cf为每辆车的固定使用成本,b表示一辆车所有的行程集合,d
为垃圾投放点i与垃圾投放点j之间的距离,fc
为车辆从垃圾投放点i行驶到垃圾投放点j消耗的燃油量,具体计算方式如下:
和β分别是与路况和车型相关的参数,计算方式如下:
其中,a为车辆行驶加速度,g为重力加速度常量,θ
为从垃圾投放点i到垃圾投放点j这一路段的路面坡度,cr为滚动阻力系数,cd为牵引力系数,a为车辆正面表面积,ρ表示空气密度。
定义约束条件包括以下六个:
(1)保证所有车辆均从车场出发且仅出发一次,即:
(2)每个垃圾投放点只允许一辆车服务一次,即:
(3)每个垃圾投放点被服务时,一定会有一辆车从某个地点行驶到该垃圾投放点,并从该点离开,即:
(4)所有车辆在垃圾中转站将垃圾全部排空,即:
(5)车辆在一次行程中的垃圾装载量不大于其容量限制,即:
(6)每辆车的工作时间不能超过规定的最大工作时长限制,即:
其中,qi表示每个垃圾投放点i的垃圾量,l
表示车辆从垃圾投放点i行驶到j的载重,t
表示车辆从垃圾投放点i行驶到j的时间,t
表示司机每日的最大工作时长。
s2,初始化基于启发信息的改进粒子群算法参数:
设置自适应粒子群算法进化种群规模为n=200、邻域解数量y=10、最大评价次数
=100000、设置评价次数计数器eva=0。
s3,生成初始候选种群,并计算适应度:
采用整数编码,对于包含n个点(车场编号为1,垃圾中转站编号为2,垃圾投放点编号为3~n)的问题,每个个体的编码均为一串由3~n之间整数组成的序列:
,n)表示垃圾投放点的标号;根据步骤(1)中已知优化目标为路径中产生的运输成本,即运输成本越少适应度越高,规划的方案越好,则个体适应度定义为:
确定个体的个体极值和全局极值。
s4,采用增强型局部搜索策略对解码后的个体进行精细搜索:
s41,通过消除时间和容量约束的解码方式对个体进行解码,得到垃圾车辆的调度方案;
s42,找出包含垃圾投放点数最多的行程所对应的车辆索引和行程索引;
s43,对包含垃圾投放点数最多的行程进行2-opt优化,有效打开在行程中的交叉路线;
s44,将优化后的行程与其余未被选择的行程按照顺序重新拼接,组成新的个体;
s45,在拼接过程中,根据车辆行程的终点分成两种情况:当行程的终点为中转站点,表明车辆在该行程中不会再前往车场。因此,仅需去除行程中的出发点和终点(垃圾中转站)。当行程的终点为车场,则该车一定是前往垃圾中转站卸货继而再回到车场,因此,需要去除该行程中的出发点、垃圾中转站点以及终点(车场);
s46,输出实施增强型局部搜索策略后的新个体。
s5,采用基于贡献度的自适应学习策略,自适应选择最符合粒子自身阶段的学习方式,生成子代粒子的实现步骤为:
s51,设置贪婪式学习策略:
个体通过逆转变异产生变异个体。其次,变异个体与个体极值通过贪婪交叉算子产生交叉个体1。最后,以同样的方式将交叉个体1与全局极值再进行贪婪交叉,生成贪婪学习后的新个体;
s52,设置多元式学习策略:
粒子通过多元变异算子产生变异个体。其次,将产生的变异个体与个体极值进行部分映射交叉得到交叉个体1。最后,将交叉个体1与全局极值进行部分映射交叉,生成多元学习后的新个体;
s53,设置探索式学习策略:
粒子通过多元变异算子产生变异个体。其次,将产生的变异个体与种群中适应度优于自身的任一粒子的个体极值进行部分映射交叉,生成探索学习后的新个体;
s54,设置利用式学习策略,粒子通过多元变异算子产生变异个体。其次,将产生的变异个体与个体极值进行部分映射交叉,生成利用学习后的新个体;
s55,种群初始化时,令每种学习策略的贡献度c
s56,对种群中各个新的个体ii分别通过轮盘赌选择确定学习策略learn(ii),根据learn(ii)生成新粒子npop(ii)并计算npop(ii)的目标值;
s57,将新种群中的新粒子依据目标值排序,得到粒子ii的排名r(ii);
s58,按照下式为第ii个新粒子分配权重w
,粒子排名越靠前,分配得到的权重便越大。
为第ii个粒子应该被分配的权重,r(ii)为第ii个粒子的排名。
s59,第kk种学习策略的贡献度按下式进行更新。
为赏罚因子,如果第ii个粒子通过第kk种学习策略适应度值有所提升,则sf
s510,更新并归一化第kk种学习策略选择概率的方法如下式所示
为第kk种学习策略选择概率,jj表示学习策略的下标,jj=1,2,...,m,ε=0.01为最小选择概率,用于保证每种学习策略都能有机会被选择。
s511,种群中的粒子通过选择不同的学习方式进行学习后,输出所有新生成的子代粒子npop、新粒子的目标值npopobj、学习策略的贡献度向量c和选择概率向量p。
s6,更新个体极值和全局极值:根据优胜劣汰的规则在每次迭代中更新个体极值和全局极值。
s7,终止准则判断:若eva》eva
则终止迭代,输出适应度最优的个体,该个体为规划好的访问垃圾投放点的顺序,否则,eva相应增加,转步骤s4。
步骤s51中,所述设计贪婪式学习策略中的贪婪交叉算子具体实现步骤如下:
s511,确定需要交叉的个体x、个体极值x
s512,从非车场和非中转站的点中随机选择一点作为车辆服务的第一个垃圾投放点s,选择垃圾投放点s在x
,在x中左侧垃圾投放点s
作为下个访问的候选集;
}中选择s’,使得s’与s构成运输成本最少的路径段;
s515,从个体极值x
和个体x中删除s,将s’设为下一个出发点s,在s的左候选集{s
}中选择新的s’作为下一个前往服务的垃圾投放点,使得s’与s构成运输成本最少的路径段,重复执行s515,直至即生成新解x
s516,从个体极值x
和个体x中删除s,将s’设为下一个出发点s,在s的右候选集
}中选择新的s’作为下一个前往服务的垃圾投放点,使得s’与s构成运输成本最少的路径段,重复执行s516,直至即生成新解x
的贪婪交叉为例,将新解x
再一次进行贪婪交叉,生成新解;
s518,输出通过贪婪交叉算子的新个体。
作为其中的一种优选例,步骤s52中,所述设计多元式学习策略中的多元变异算子具体实现步骤如下:
s521,计算逆转变异、交换变异和插入变异的选择概率;
s522,基于轮盘赌方式选择变异方式的序号;
s523,如果选择变异方式1,则对个体进行交换变异;
s524,如果选择变异方式2,那么对个体进行逆转变异;
s525,如果选择变异方式3,则对个体进行插入变异;
s526,输出通过多元变异算子后的新个体。
相应的本发明还提供一种垃圾车辆低碳调度系统,包括:
获取模块,用于获取输入信息,包括:垃圾车辆需要服务的垃圾投放点数量n、垃圾投放点的坐标信息、车场坐标信息、垃圾中转站坐标信息、每个垃圾投放点的垃圾量、垃圾车辆容量q以及司机的最大工作时长t
确定模块,用于将输入信息输入到预先构建的基于自适应粒子群算法的垃圾车辆低碳调度优化模型,确定最优调度方案;
所述基于自适应粒子群算法的垃圾车辆低碳调度优化模型的优化目标为所规划的调度方案中车辆总的运输成本最少,基于自适应粒子群算法的垃圾车辆低碳调度优化模型的约束条件为所有车辆均从车场出发且仅出发一次、每个垃圾投放点只允许一辆车服务一次、每个垃圾投放点被服务时、一定会有一辆车从某个地点行驶到该垃圾投放点并从该点离开、所有车辆在垃圾中转站将垃圾全部排空、车辆在一次行程中的垃圾装载量不大于其容量限制以及每辆车的司机的工作时间不能超过规定的最大工作时长限制。
一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由计算设备执行时,使得所述计算设备执行所述的方法中的任一方法。
一个或多个处理器、存储器以及一个或多个程序,其中一个或多个程序存储在所述存储器中并被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行所述的方法中的任一方法的指令。
本发明的效果可以通过以下仿真实验进一步说明:
通过对中国南京市江北新区绿环公司实地调研,得到公司服务的54个小区(标记为3-56)经纬度坐标,垃圾中转站(标记为2)和车场(标记为1)经纬度坐标,某日各小区的垃圾量。将所有点的经纬度坐标转化为平面直角坐标系坐标,如表1所示。垃圾车辆的容量限
制为10t,司机最大时长限制为8h。
i.采用本发明与现有的求解垃圾清运问题的算法在南京市江北新区绿环公司垃圾清运实例上的实验结果对比;
ii.采用本发明自适应粒子群算法求解垃圾清运问题最小运输成本的车辆调度路径规划图;
iii.采用本发明与现有的求解垃圾清运问题的算法的最优方案在固定成本、燃油成本以及碳排放成本上的对比结果。
实验在实例中分别独立地运行30次。表2分别列出了对比算法与自适应粒子群算法的对比结果。其中best和mean分别表示30次运行中搜索到的最优和平均运输成本目标值,将best和mean的最好值加粗表示。上述实验结果表明,所提算法对于垃圾清运问题的综合性能优于各类对比算法,具有较高的求解精度。因此,所提算法能够有效求解垃圾清运问题,可为垃圾清运公司提供一套运输成本低、碳排放量少的车辆调度方案。
图2为所提算法在南京市江北新区绿环公司垃圾清运车辆调度实例中的具体调度方案。其中,黑色的点表示垃圾投放点,红色五角星表示垃圾车场,绿色正方形表示垃圾中转站点。黑色虚线表示车辆1行驶的所有行程,红色实线表示车辆2行驶的所有行程。由图2可见,一共需要两辆车外出完成垃圾清运任务。第一辆车在满足司机最大时长限制下行驶了4个行程,分别为(1-21-14-28-29-31-32-30-27-22-25-50-2),(2-41-40-37-39-52-46-42-2),(2-4-43-53-34-33-38-36-56-35-2),(2-54-49-55-26-48-47-51-45-44-2-1),第二辆车的行程安排为(1-13-3-20-10-9-6-5-8-12-2),(2-11-23-15-16-19-17-18-7-24-2-1)。由于该问题的优化目标为运输成本最小化,而对清运完成的时间没有过高的要求,仅需要在司机的最大工作时长内完成垃圾清运任务,因此减少车辆的使用有利于节约运输成本。另外,车辆2在第二次行程中完成了最后一个垃圾投放点的收集,此时,垃圾清运任务已被两辆车全部完成。因此,车辆2只有两个行程。
图3给出了所提算法和对比算法的最优方案在固定成本、燃油成本以及碳排放成本上的对比结果。从图3可以看出,ts算法具有最高的固定成本,原因是它调用了最多的车辆。所提算法在所有对比算法中取得了最低的碳排放成本和总运输成本。与hga和sa+ga相比,所提算法虽然在燃油成本上略高,但它在碳排放成本上的占优幅度大于在燃油成本上的劣势,因此,它的总运输成本也更低。由式优化目标的公式可见,燃油成本仅涉及距离信息,而碳排放成本与距离和载重信息均相关。本文实验中的其余对比算法仅考虑了服务点之间的距离信息,而所提算法将距离和载重量同时作为启发信息指导算法的搜索操作,因而它更有可能获得更低的碳排放及总运输成本。综上,所提算法更适用于求解垃圾清运问
题,通过合理地安排车辆和路线,它能够最大程度地节约运输成本,包括燃油成本和碳排放成本,从真正意义上实现了“节能减排”的目标。
在本公开中参照附图来描述本发明的各方面,附图中示出了许多说明的实例。本公开的实例不必定义在包括本发明的所有方面。应当理解,上面介绍的多种构思和实例,可以以很多方式中任意一种来实施,这是因为本发明所公开的构思和实例并不限于任何实施方式。另外,本发明公开的一些方面可以单独使用,或者与本发明公开的其他方面的任何适当组合来使用。
虽然本发明已以较佳实施例揭露如上,然其并非用以限定本发明。本发明所属技术领域中具有通常知识者,在不脱离本发明的精神和范围内,当可作各种的更动与润饰。因此,本发明的保护范围当视权利要求书所界定者为准。
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和变形,这些改进和变形也应视为本发明的保护范围。

}

咳咳,为什么要出这一篇文章呢?首先,这段时间本人在找工作,然后被问到了各类算法的底层细节,有些确实很懵逼。这里做个总结,也顺便给大家归纳归纳一下!

我们先来说一说最常用的 ECC 吧,ECC 就是 Elliptic Curve Cryptography 的缩写。那么,在说椭圆曲线加密之前,我们来说一说什么是椭圆曲线?

中学的时候我们学过圆锥曲线,比如椭圆、双曲线和抛物线。因为描述这些曲线的方程都是二次方程,圆锥曲线又被称为二次曲线。而椭圆曲线是则是由三次方程描述的一些曲线。更准确地说,椭圆曲线是由下面的方程描述的曲线


需要注意的是,椭圆曲线之所以叫“椭圆曲线”,是因为其曲线方程跟利用微积分计算椭圆周长的公式相似。实际上它的图像跟椭圆完全不搭边。

【注意】椭圆曲线有这样的两个性质:

  1. 画一条直线跟椭圆曲线相交,它们最多有三个交点

由于椭圆曲线加密进行的运算实际上都是在椭圆曲线上进行的,必须注意的是,这里把这些运算称为“加法”和“乘法”仅仅是方便描述,他们跟平时认知的加法和乘法完全是两码事,完全可以给他们取其它名字(比如”乘法“和”幂运算“等)。总之就是规定,规定,规定(重要的事说三遍)

  • 首先定义坐标系中距离X轴无穷远点为椭圆曲线上的一个特殊点,称为0点
    那么此时上述第二条性质可以加强为:过曲线上任意两点(可重合)的直线必定与曲线相交于第三点。

  • 然后定义椭圆曲线上点的加法。设椭圆曲线上有两点,A和B点,那么作过这两点的直线与该曲线相交于第三点(C点),然后关于X轴对称得到D点,则D为这两个点的和,记作D=A+B (注意: 这仅仅是规定)。很明显,D点也在该曲线上。所以椭圆曲线上两点之和也是曲线上的点

特别地,如果两点重合,则作椭圆曲线在A点处的切线,与曲线相交于第二点(B点),然后关于X轴对称得到C点,则C点为A点与自身的和,记作 C =  2A

加法,我们可以得到以下结论:

  • 也就是椭圆曲线上的加法满足交换律。

  • 因为0点是无穷远点,所以过A点与0点的直线是垂直于X轴的,它与曲线相交于另一点B点,那么B点关于X轴对称的点就是A点,即A点为A点和0点之和。(这里其实是 A+0 = 过A和0的第三点B的对称点A, 所以 A+0=A)

然后在加法的基础上,定义椭圆曲线上点的乘法。

乘法:(下列的也是一种规定,是规定)

P是椭圆曲线上的一个点,那么正整数k乘以点P的结果由下面的式子定义,注意式子中的加法是上面提到的椭圆曲线上点的加法:

k 为正整数,P 是椭圆曲线上的点(称为基点),已知

k 为正整数,P 是椭圆曲线上的点,已知 P^k

以上,是复杂度很高的操作,公钥反推私钥很难求 (在椭圆曲线算法中很难求);往下看 我们可以知道, 私钥其实就是 K,而公钥是 K*G点 的 (x, y)中 双坐标x和y的值.

// 先获取一个椭圆实例

好了,以上就是对椭圆曲线加密的讲解,其实以太坊中不是直接用go的原生库crypto中的ecdsa哦,而是用了比特币所使用的一个C++的库

【本文还未写完,国庆这几天会完善完.......】

}

我要回帖

更多关于 已知fx求fy的概率密度 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信