CN117688968A - 一种基于粒子群算法的有轨电车车辆布局方法 - Google Patents
一种基于粒子群算法的有轨电车车辆布局方法 Download PDFInfo
- Publication number
- CN117688968A CN117688968A CN202410155262.9A CN202410155262A CN117688968A CN 117688968 A CN117688968 A CN 117688968A CN 202410155262 A CN202410155262 A CN 202410155262A CN 117688968 A CN117688968 A CN 117688968A
- Authority
- CN
- China
- Prior art keywords
- individuals
- individual
- population
- iteration
- generation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 68
- 239000002245 particle Substances 0.000 title claims abstract description 65
- 238000005457 optimization Methods 0.000 title abstract description 28
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 139
- 230000006870 function Effects 0.000 claims abstract description 79
- 239000003016 pheromone Substances 0.000 claims abstract description 71
- 230000002068 genetic effect Effects 0.000 claims abstract description 27
- 238000002922 simulated annealing Methods 0.000 claims abstract description 22
- 230000035772 mutation Effects 0.000 claims description 28
- 230000008569 process Effects 0.000 claims description 25
- 238000005265 energy consumption Methods 0.000 claims description 20
- 238000004146 energy storage Methods 0.000 claims description 17
- 238000009826 distribution Methods 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 6
- 108091026890 Coding region Proteins 0.000 claims description 4
- 230000003247 decreasing effect Effects 0.000 claims description 4
- 230000009191 jumping Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 3
- 238000010606 normalization Methods 0.000 claims description 2
- 230000000694 effects Effects 0.000 abstract description 5
- 241000257303 Hymenoptera Species 0.000 description 15
- 108090000623 proteins and genes Proteins 0.000 description 9
- 230000007423 decrease Effects 0.000 description 8
- 238000001816 cooling Methods 0.000 description 6
- 230000013011 mating Effects 0.000 description 6
- 238000000137 annealing Methods 0.000 description 5
- 230000001186 cumulative effect Effects 0.000 description 4
- 230000006978 adaptation Effects 0.000 description 3
- 230000006399 behavior Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 3
- 238000012804 iterative process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000010276 construction Methods 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 238000001704 evaporation Methods 0.000 description 2
- 230000008020 evaporation Effects 0.000 description 2
- 230000037361 pathway Effects 0.000 description 2
- 230000009024 positive feedback mechanism Effects 0.000 description 2
- 230000002028 premature Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 206010064571 Gene mutation Diseases 0.000 description 1
- 101100037618 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) ant-1 gene Proteins 0.000 description 1
- 230000001133 acceleration Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000033228 biological regulation Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000002425 crystallisation Methods 0.000 description 1
- 230000008025 crystallization Effects 0.000 description 1
- 230000001351 cycling effect Effects 0.000 description 1
- 238000013075 data extraction Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000007667 floating Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000004927 fusion Effects 0.000 description 1
- 238000010353 genetic engineering Methods 0.000 description 1
- 230000008303 genetic mechanism Effects 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 238000003475 lamination Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003094 perturbing effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 230000001172 regenerating effect Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000011343 solid material Substances 0.000 description 1
- 238000003860 storage Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请公开了一种基于粒子群算法的有轨电车车辆布局方法,涉及有轨电车布局技术领域,包括:获取有轨电车的运营数据,建立目标函数;根据预设参数生成多个目标函数的初始解,作为种群的多个个体;采用遗传算法对生成的多个个体进行选择、交叉和变异处理,作为第一代种群;采用粒子群算法调整第一代种群中各个体的位置,得到第二代种群;采用蚁群算法更新第二代种群中各个体的信息素浓度,得到第三代种群;对第三代种群采用模拟退火算法进行迭代计算,得到的种群作为第四代种群;从第四代种群的多个个体中,选择目标函数值最优的个体作为最优解。针对有轨电车车辆布局难以求得全局最优解的问题,本申请提高了有轨电车车辆布局的全局优化效果。
Description
技术领域
本申请涉及有轨电车布局技术领域,特别涉及一种基于粒子群算法的有轨电车车辆布局方法。
背景技术
有轨电车是城市公共交通的重要组成部分,其车辆布局的合理性直接关系到运营效率、能源利用和服务质量。传统有轨电车车辆布局问题通常受到问题复杂性和多目标优化的挑战,使得难以在有限时间内求得全局最优解。传统有轨电车车辆布局问题涉及线路长度、站点分布和乘客流量等多个因素,形成一个高度复杂的多目标优化问题。单一算法难以在有限时间内对这样的问题进行全局搜索,容易陷入局部最优解。
传统的算法如遗传算法、模拟退火算法等在处理复杂、高维的问题时受到限制,无法有效平衡全局搜索和局部优化。
在相关技术中,比如中国专利文献CN116050235A中提供了一种云边环境下工作流数据布局的方法及存储介质,对云边环境进行数学表示,基于副本生成开销和数据传输开销,以最小化总时延为目标,将数据布局问题建模为0-1整数规划问题,得到数学问题模型;采用基于遗传算法算子的非线性惯性权重离散粒子群优化算法,在粒子群算法中引入遗传算法的交叉和变异算子,并根据粒子和全局粒子的差异自适应调整惯性权重,以对所述数学问题模型求解;根据求解结果进行工作流数据布局;能够有效降低时延;且在粒子群算法中引入遗传算法的交叉和变异算子,增强了粒子群算法的搜索能力,避免早熟收敛,并根据当前粒子和全局粒子的差异自适应调整惯性权重,使寻优过程更有效率。但是该方案是在粒子群算法中引入了遗传算子和自适应惯性权重调整来增强搜索能力。但是其核心仍然是粒子群算法,而粒子群算法易陷入局部最优解,不利于获得全局最优解。
发明内容
1.要解决的技术问题
针对现有技术中存在的有轨电车车辆布局难以求得全局最优解的问题,本申请提供了一种基于粒子群算法的有轨电车车辆布局方法,通过综合各个算法的优势,避免单一算法的局限性,提高了有轨电车车辆布局的全局优化效果。
2.技术方案
本申请的目的通过以下技术方案实现。
本说明书实施例提供一种基于粒子群算法的有轨电车车辆布局方法,包括:获取有轨电车的运营数据,运营数据包含线路长度、站点分布和乘客流量;根据获得的运营数据,建立目标函数,其中,目标函数包含最小化列车总能耗、最小化充电站数量和最大化储能装置的利用率;根据预设参数生成多个目标函数的初始解,作为种群的多个个体;采用遗传算法对生成的多个个体进行选择、交叉和变异处理,生成新的种群,作为第一代种群;采用粒子群算法调整第一代种群中各个体的位置,得到第二代种群;采用蚁群算法更新第二代种群中各个体的信息素浓度,得到第三代种群;对第三代种群采用模拟退火算法进行迭代计算,得到的种群作为第四代种群;从第四代种群的多个个体中,选择目标函数值最优的个体作为最优解;根据最优解对有轨电车车辆进行布局。
其中,通过有轨电车线网的运营监控系统获取实时运行数据。数据主要来源包括:线路和站点基础信息数据库;车载GPS系统上传的运行位置和速度数据;车站刷卡系统获得的上下车人数数据。建立数据提取模块,从多个数据源中筛选出所需的线路长度、站点分布和乘客流量数据。经处理后的数据存储在关系数据库中,包括:线路基础信息表;站点基础信息表;线路乘客流量表。列车总能耗可以由以下几个因素组成:列车在行驶中的动能消耗、制动时的能量回收、车辆在充电站充电时的能量消耗等。根据运营数据和车辆参数,可以建立一个关于能耗的数学模型,例如考虑列车速度、加速度、站点停留时间、线路曲率等因素,综合计算出每辆车在不同区段的能耗,并将所有车辆的能耗进行累加,即可得到列车总能耗。充电站数量的最小化旨在降低建设和运营成本,同时确保有轨电车运行的连续性。建立一个充电站布局模型,考虑有轨电车的行驶里程、充电设备的功率和充电时间、充电站之间的距离等因素,通过数学规划或模拟算法,确定最优的充电站布局方案,以最小化充电站数量。储能装置的利用率是指储能装置实际存储的能量与其额定容量之比。为了最大化其利用率,可以采用智能调度策略,合理规划有轨电车的运行路线和充电策略,利用制动能量回收和充电站充电来满足列车的能量需求,减少储能装置的空闲和过载状态,从而提高其利用率。将上述三个指标综合起来形成一个多目标优化的目标函数。一种常用的方法是采用加权求和的方式,给每个指标分配一个权重,然后将各指标乘以对应的权重并相加,得到一个综合指标,通过调整权重的大小可以实现对不同指标的灵活控制。
其中,,
其中,、/>和/>为可调整的比例系数;列车总能耗标准化值=列车总能耗/列车总能耗参考值;充电站数量标准化值=充电站数量/充电站数量参考值;储能装置利用率标准化值=储能装置利用率/储能装置利用率参考值。具体的,各个指标的标准化值可以通过:利用过去一段时间内的实际观测值统计得出的平均值或常见值作为参考值。参考行业内对各指标的标准规定值或 Empirical值作为参考值。根据系统模型计算理论上各指标的合理取值范围,选择中间值作为参考值。计算多个可选方案的指标值,选择较为典型和合理的方案值作为参考值。
其中,目标函数包括:最小化列车总能耗、最小化充电站数量、最大化储能装置利用率等。设置遗传算法的参数,包括种群大小pop_size,迭代次数iter_num,交叉率p_c,变异率p_m等。随机生成初始种群,根据种群大小pop_size,随机生成pop_size个体作为初始种群,每个个体包含目标函数所需决策变量的取值。使用二进制编码对每个个体的决策变量进行编码。将每个个体解码为决策变量,代入目标函数进行计算,得到每个个体的目标函数值,作为个体的适应度值。将初始种群的编码、解码、目标函数值等信息存储在内存或文件中,作为遗传算法优化的初始输入种群。
其中,遗传算法是一种模拟自然选择和遗传机制的优化算法,其灵感来自生物学中的遗传过程。该算法通过对候选解的编码、交叉、变异和选择等操作,模拟了生物群体的演化过程,以搜索问题的最优解。遗传算法的核心思想是通过模拟自然选择,逐代优化种群中的个体,以期望获得更好的解。在本申请中,遗传算法可以用于处理生成的多个个体,进行选择、交叉和变异操作,形成新的种群。具体的,将每个列车布局方案表示为一个个体,可以采用二进制编码或其他合适的编码方式。例如,每个决策变量(充电站位置、列车行驶路径等)可以用二进制串表示。随机生成一定数量的个体,形成第一代种群。这些个体代表了不同的列车布局方案。计算每个个体的适应度,即目标函数的值。这个适应度值用于衡量个体的优劣,是进化过程中的评价标准。通过轮盘赌等选择方式,按照适应度选择一部分个体,作为父代用于后续的交叉和变异操作。适应度较高的个体被选中的概率较大,模拟了自然选择中适者生存的原则。对选中的父代个体进行交叉操作,生成新的个体。交叉操作模拟了基因的交换过程,将两个父代个体的信息进行组合,产生具有新特征的后代。对经过交叉的个体进行变异操作,引入一些随机性,以增加种群的多样性。变异操作模拟了基因的突变过程,有助于跳出局部最优解,更好地探索搜索空间。将经过选择、交叉和变异处理的个体组成新的种群,作为下一代种群。重复上述过程,直至达到停止条件(例如达到一定迭代次数或目标精度)。
其中,粒子群算法是一种优化算法,灵感来源于鸟群或鱼群等群体的行为。在这个算法中,个体被称为粒子,它们在搜索空间中移动,并通过社会性和个体经验来调整其移动方向和速度,以寻找最优解。每个粒子都有自己的位置和速度,并且通过不断地更新这些参数,整个粒子群向着全局最优解进行搜索。在本申请中,粒子群算法可以用于调整列车布局的参数,以最小化目标函数,具体的,将每个粒子表示为一个列车布局的解。每个粒子的位置就是一个潜在的列车布局,而每个维度则表示一个决策变量,例如充电站的位置、列车的行驶路径等。定义一个适应度函数,即目标函数,用于评估每个粒子的优劣。在这里,适应度函数就是前面提到的考虑能耗、充电站数量和储能装置利用率的综合目标函数。随机生成一群粒子,即初始化一组的列车布局。每个粒子都有一个与之关联的速度向量,表示粒子在搜索空间中的移动方向和速度。根据粒子群算法的更新规则,每个粒子根据自身经验和群体中其他粒子的经验,调整自己的位置和速度。这个调整的过程使得粒子群朝着更优解的方向移动。计算更新后每个粒子的适应度,即目标函数的值。跟踪全局最优解,将适应度最好的粒子对应的位置作为当前的全局最优解。使用更新后的粒子位置和速度形成新一代的粒子群,然后重复上述步骤,直至满足停止条件(例如达到一定迭代次数或目标精度)。通过这样的迭代过程,粒子群算法能够逐渐收敛到一个较好的解,即能够满足最小化列车总能耗、最小化充电站数量和最大化储能装置利用率等目标的列车布局。
其中,蚁群算法是一种模拟蚂蚁群体行为的启发式优化算法。它源于对现实生态系统中蚂蚁群体协同工作的观察,其中蚂蚁通过释放信息素来沟通,并根据信息素浓度选择路径。算法的核心思想是模拟蚂蚁在解决问题时的集体智能,通过蚂蚁之间的相互合作,找到问题的优质解。在本申请中,蚁群算法可以用于更新第二代种群中各个体的信息素浓度,以生成第三代种群。具体的,将问题转化为图论问题,其中图的节点表示的决策点,边表示两个决策点之间的关系。在列车布局问题中,可以将充电站的位置、列车的路径等作为节点,路径之间的可行性作为边。为图中的每条边初始化信息素浓度。这可以看作是第一代种群的信息素浓度。对于每个个体(或解),模拟一只蚂蚁从起始点出发,根据信息素浓度选择路径。这可以通过概率性的方式来模拟,信息素浓度高的路径有更高的选择概率。每只蚂蚁在选择路径后,更新所选择路径上的信息素浓度。通常,路径上信息素的蒸发和新信息素的释放都会考虑进来,以模拟蚂蚁释放信息素的行为。计算每个个体的适应度,即目标函数的值。蚁群算法通常以路径上信息素浓度的总和作为适应度的衡量标准。根据适应度和路径上信息素浓度,更新第二代种群中各个体的信息素浓度。适应度较高的个体会对其所选择路径上的信息素贡献更多,加强该路径的信息素浓度。将更新后的信息素浓度作为第三代种群的一部分,用于下一代的迭代。重复上述过程,形成连续的种群演化。蚁群算法具有自组织、全局搜索和适应性的特点,有助于寻找到更优的列车布局方案。
其中,模拟退火算法是一种全局优化算法,灵感来自固体退火原理。它模拟固体物质加热后冷却的过程,通过随机化搜索策略来避免陷入局部最优解。算法通过接受更差的解以一定的概率来避免陷入局部最优,这个概率随着迭代的进行逐渐降低,类似于固体在冷却过程中的结晶过程。在本申请中,模拟退火算法可以用于迭代计算第三代种群,得到的种群作为第四代种群。具体的,将模拟退火算法中的温度参数初始化,这个温度表示系统的混乱程度。较高的温度意味着更容易接受更差的解。以第三代种群中的个体为初始解,每个个体对应问题的一个解。在每次迭代中,对当前解进行微小的随机扰动,得到一个新的解。计算新解与当前解的目标函数差异。以一定的概率接受更差的解。这个概率随着温度的降低而减小,模拟了在搜索过程中逐渐过渡到更精确的状态的过程。降低温度,模拟退火的过程。降低温度的速度可以通过设定的降温计划来控制。当达到一定的停止条件,比如温度降到一个很低的值或者达到迭代次数上限时,结束算法。将退火过程中得到的最优解作为第四代种群的一部分。通过模拟退火算法,第三代种群中的个体经过一系列温度降低和随机搜索的过程,有机会跳出局部最优解,找到全局较优解。模拟退火算法的特点是在搜索过程中通过接受差解的方式来避免陷入局部最优,这对于复杂的优化问题有较好的全局搜索能力。
进一步的,预设参数包括:种群大小、迭代次数、交叉率和变异率;设置初始种群大小、迭代轮数上限、个体拟合度、交叉率和变异率;循环执行以下步骤:进行一次遗传算法迭代运算,记录当前迭代代数;判断当前迭代代数是否达到设置的迭代轮数上限,如果达到则确定迭代次数,跳出循环;如果未达到迭代轮数上限,则继续判断所有个体拟合度是否达到拟合度阈值,如果达到则确定迭代次数,跳出循环;如果个体拟合度未达到阈值,则进行一下次迭代运算;在每次迭代结束后,判断当前代的目标函数值是否小于上一代的目标函数值;如果当前代目标函数值小于上一代的目标函数值,则当前连续未减小代数清零,否则连续未减小代数加1;判断连续未减小代数是否达到预设正整数N,如果是则增大交叉率和变异率,否则减小交叉率和变异率。
其中,个体拟合度是衡量一个个体在给定问题中优劣的度量标准。在遗传算法和进化算法中,个体的拟合度通常与问题的目标函数相关。目标函数可以是最大化或最小化的,而个体的拟合度则是根据目标函数计算出的一个数值。在本申请中,个体拟合度用于评估种群中每个个体的好坏。在迭代的过程中,根据问题的特性,目标函数的值越高或越低,个体的拟合度就越好。在模拟退火算法中,个体拟合度的优劣影响着接受更差解的概率,这一概率的调整可以基于个体拟合度的变化。
其中,交叉率是遗传算法中控制基因交叉概率的参数。它表示在每一次迭代中,两个个体进行交叉的概率。交叉是从两个个体中随机选择一点,然后交换这一点之后的基因片段,以产生新的个体。通过交叉操作,可以将两个父代个体的信息结合起来,产生新的后代个体。在本申请中,交叉率用于控制在模拟退火算法中生成新个体的概率。较高的交叉率意味着更多的个体会经过基因交叉产生新的后代,从而增加种群的多样性。
其中,变异率是遗传算法中控制基因变异概率的参数。它表示在每一次迭代中,每个个体发生变异的概率。变异是指在个体的基因中随机修改某些基因的值,以引入新的变化。变异有助于维持种群的多样性,防止过早收敛到局部最优解。在本申请中,变异率用于控制在模拟退火算法中个体基因发生变异的概率。适度的变异率可以帮助算法在搜索过程中跳出局部最优解,提高全局搜索的能力。
具体的,记录迭代轮数i,初始化连续未减小代数count=0,在每轮迭代结束后,判断第i代目标函数值是否小于上一代/>,如果/>,则count=0,表示目标函数值减小,重置count,如果/>,则count=count+1,表示连续未减小代数count加1,判断count是否达到预设阈值N,N表示允许的最大连续未减小代数,如果count小于N,则保持原交叉率和变异率不变,如果count大于等于N,说明陷入局部最优,则增大交叉率和变异率,重复执行直到满足终止条件。
进一步的,生成第一代种群,包括如下步骤:获取当前种群所有个体的目标函数值;获取当前种群的规模大小N;设置交叉池大小阈值M,其中交叉池用于存储目标函数值较大的个体;重复执行以下步骤,直至交叉池内个体数达到M;从当前种群中随机选择两个个体,进行组合;比较选择的两个个体的目标函数值的大小;将目标函数值较大的个体放入交叉池中。
其中,交叉池是一个用于存储目标函数值较大的个体的集合。在进化算法中,它通常被用于保存一些在交叉操作中表现较好的个体,以增加这些个体在下一代中被选择的概率。交叉池的引入旨在促使算法更快地收敛到较优解,提高搜索效率。具体的,计算当前种群中所有个体的目标函数值,记录当前种群规模N,设置交叉池容量阈值M(M小于N),初始化交叉池,池中个体数count=0,进入选择迭代过程:从当前种群随机选择两个个体,进行组合运算,比较两个个体的目标函数值,将目标函数值较大的个体放入交叉池,交叉池个体数count加1,判断count是否达到M,如果未达到,重复以上步骤,如果交叉池个体数达到阈值M,则终止选择迭代。
进一步的,生成第一代种群,还包括如下步骤:获取交叉池中父代个体的数量作为交叉配对数;从交叉池中随机选择两个父代个体;在选择的父代个体的编码序列中,通过均匀随机数生成0到编码长度之间的随机数,作为交叉点;将两个父代个体在交叉点之前的编码序列直接复制到两个子代个体对应的位置;将两个父代个体在交叉点之后的编码序列对调后分别复制到两个子代个体中;存储生成的子代个体,作为子代种群;重复以上步骤,直至达到交叉配对数;合并所有的子代种群,作为第一代种群。
其中,父代是在进化算法中用于产生子代的个体集合。在遗传算法中,通常从当前种群中选择较优秀的个体作为父代,通过交叉和变异等操作产生新的个体作为子代。父代个体的选择通常基于其适应度,即目标函数值的大小。子代是通过父代个体经过遗传操作(如交叉和变异)产生的新个体。在进化算法中,子代个体是在父代个体的基础上经过一定操作而生成的。子代个体通常会经过一些变化和调整,以增加种群的多样性并寻找更优的解。编码序列是表示个体特征或基因型的一串编码。在遗传算法中,个体通常以一种编码形式来表示,例如二进制编码、整数编码或浮点数编码。编码序列的具体形式取决于问题的特性和算法的设计。在本申请中,父代是从交叉池中随机选择的个体,用于产生子代。子代是通过对父代个体进行交叉操作而产生的新个体。在交叉操作中,父代个体的编码序列被用来生成子代个体的编码序列。具体来说,交叉点之前的编码序列直接复制到子代个体中,而交叉点之后的编码序列则会交换并复制到另一个子代个体中。这样产生的子代个体被存储起来,最终合并成为新的种群。
进一步的,第二代种群,包括如下步骤:获取第一代种群中所有个体的位置、速度和适应度值,作为初始参数;设置第二代种群终止迭代的最大代数、最小适应度误差/>和惯性权重/>;重复进行以下步骤,直至迭代次数达到/>或适应度误差小于/>:对每个个体i,计算个体i在当前位置的适应度值/>;如果适应度值/>大于对应个体的历史最佳适应度时,将对应位置设置为个体i的最优解/>;在所有的最优解/>中,选择适应度值/>最小的位置作为全局最优解/>;计算全局最优解的适应度误差;如果连续L代的全局最优解的适应度误差/>不变,则将当前迭代的惯性权重/>增加/>;如果连续M代的全局最优解的适应度误差/>变小,则将当前迭代的惯性权重/>减小/>;根据调整后的惯性权重/>,更新每个个体的速度和位置;终止迭代后,输出全局最优解/>对应的个体,作为第二代种群。
其中,个体的位置表示问题的当前解,是算法搜索空间中的一个点。这些位置将在迭代中不断更新,经过进化操作逐渐趋向问题的最优解。个体的速度将在迭代中调整,以影响个体在搜索空间中的移动方向和速率。速度的更新会受到个体当前位置、个体历史最优位置以及全局最优位置等因素的影响。适应度值用于评估个体的优劣。在进化算法的选择过程中,适应度值高的个体更有可能被选择保留或用于产生新的个体。这有助于将优秀的个体传递到下一代,逐步优化整个种群。
其中,全局最优解表示整个种群中具有最佳适应度值的个体的位置。在进化算法中,全局最优解是在整个种群中找到的最好的解决方案。通常,全局最优解的更新是在每次迭代中根据个体的适应度值进行的。表示个体i的历史最佳位置,即在个体i的搜索过程中,它曾经达到的最好位置。当个体i的当前适应度值/>大于其历史最佳适应度值时,将对应位置设置为/>。个体的历史最佳适应度是指个体在其搜索过程中达到的适应度值的最佳状态。/>表示个体i在过去的搜索历史中所获得的最佳适应度值。
具体的,记录全局最优解在迭代过程中适应度值的变化,计算全局最优适应
度在本代t和上一代t-1之间的差异误差,错误不变的连续迭代轮数L初始化为0,错误ε
变小的连续迭代轮数M初始化为0,如果不变:L=L+1,M=0,如果ε变小:M=M+1,L=0,当L达到
预设阈值,增大惯性权重,当M达到预设阈值,减小惯性权重,根据调整后的,更新所有
个体的速度和位置,迭代结束后,输出最终全局最优解。通过自适应调整惯性权重,可以动
态控制算法搜索能力,避免陷入局部最优。
具体的,设置连续ε不变的迭代代数阈值L,初值设为0,设置连续ε变小的迭代代数阈值M,初值设为0,在每轮迭代后,计算全局最优解的适应度误差ε,如果ε与上一轮相比不变,则L=L+1,M赋值为0,如果ε与上一轮相比变小,则M=M+1,L赋值为0,判断L是否达到预设阈值:如果达到,则增加惯性权重:,如果未达到,/>保持不变,判断M是否达到预设阈值:如果达到,则减小惯性权重:/>,如果未达到,/>保持不变,根据调整后的/>,更新速度和位置。
更具体地,在本申请中,根据调整后的惯性权重更新速度和位置包括:速度更新方程:/>,其中,/>为个体i在第t代的速度,/>为更新后的速度,/>为惯性权重,/>、/>为学习因子,/>、/>为随机数,[0,1]内,/>为个体i的历史最优位置,/>为全局最优位置,/>为个体i在第t代的位置。位置更新方程:/>,其中,/>为个体i在第t代的位置,/>为更新后的位置,/>为更新后的速度。将调整后的惯性权重/>代入上述速度和位置公式,进行更新。通过动态调整/>来控制速度和位置的更新,以实现对全局和局部搜索能力的平衡。
进一步的,采用目标函数作为适应度值。对于每个个体i,在当前位置上计算目标函数值。目标函数值即为适应度值/>。如果/>大于个体i的历史最佳适应度pbest1,将对应位置设置为/>,并更新/>为/>。从所有个体的/>中选择适应度值最小的位置作为全局最优解/>。适应度误差ε表示全局最优解/>在两次迭代之间的适应度值变化,即/>。
进一步的,第三代种群,包括如下步骤:获取第二代种群中每个个体的目标函数值作为各个体的路径长度;初始化每个个体上信息素浓度;设置蚁群算法迭代次数NC,重复NC次以下迭代过程:对每只蚂蚁,按照路径长度信息素概率,通过轮盘赌选择下一个个体;计算每只蚂蚁遍历完所有个体后,获得的路径长度;根据遍历路径长度,计算路径上每个个体的信息素浓度增量/>;对所有个体,按照信息素浓度增量/>更新信息素浓度/>;迭代结束后,按照信息素浓度/>最高的个体路径,作为第三代种群。
其中,对于每个个体,计算目标函数值作为路径长度。这可以通过将个体的路径映射到问题空间中,然后计算目标函数值得到。在每个路径上初始化信息素浓度。这可以是一个固定值,也可以根据问题的性质进行动态初始化。信息素浓度的初始设置可以影响算法的探索和开发策略。设定蚁群算法的总迭代次数NC。这是算法运行的主要控制参数,它决定了蚁群将在搜索空间中进行多少次迭代。每只蚂蚁根据τ计算路径转移概率,通过轮盘赌选择下一个个体,所有蚂蚁遍历完获得路径长度/>,计算每个路径长度/>对应的信息素增量/>。
更新每个个体的信息素浓度:,其中/>为信息素挥发率取值范围0.1至0.99之间,优选的,通过如下公式计算信息素挥发率:根据迭代过程中信息素的变化情况,动态调整/>值,以保证搜索iverse。计算公式如下:,其中/>和/>分别为可能的最小最大挥发率,/>为当前迭代次数,/>为最大迭代次数。随着迭代的进行,/>值线性减小。迭代结束后,选择信息素浓度/>前列最高的个体路径作为第三代种群,返回第三代种群,通过蚁群算法的正反馈机制,可以自动聚集较优路径,实现种群的集体智能优化。
具体的,获取第二代种群中每个个体i的目标函数值。将目标函数值,/>映射到信息素浓度,目标函数值小的个体对应信息素浓度高。具体计算方法:
,其中,/>为个体i的初始信息素浓度,/>为最大信息素浓度,/>为最小信息素浓度,/>为所有个体中的最大目标函数值,/>为所有个体中的最小目标函数值。通过上述公式,可以将目标函数值较小(适应度较高)的个体,映射到较大的信息素浓度,从而增加这些个体被蚂蚁选择的概率。按照计算出的信息素浓度/>,初始化每个个体上的初识素值。计算每个个体i被选择的概率/>:/>,其中,/>为个体i的信息素浓度,/>为信息素重要程度的参数。根据/>计算每个个体的选择概率区间:个体1区间:/>,个体2区间:/>,......,个体n区间:/>,生成一个[0,1]间的随机数rand。判断rand落在哪个个体的概率区间内,则选择对应的个体。重复以上步骤,直到蚂蚁遍历完所有个体。对于每只蚂蚁,使用轮盘赌选择算法来选择下一个位置。具体步骤包括:生成一个/>范围内的随机数(r)。根据计算的概率/>进行累积求和。选择第一个使得累积概率大于(r)的路径作为下一个位置。
进一步的,对每只蚂蚁,按照路径长度信息素概率,通过轮盘赌选择下一个个体,包括如下步骤:计算每条路径上每个个体的选择概率,计算公式为:,其中,/>为蚂蚁从节点i选择到达节点j的概率;/>为节点i到节点j的信息素浓度;/>为节点i到节点j的期望启发因子,设置为路径长度的倒数;α为信息素重要程度参数;β为期望启发因子重要程度参数。
其中,:路径/>被选择的概率,考虑了信息素和启发因子双重影响。/>:路径/>上的信息素浓度,反映了该路径被前期蚂蚁选择的程度。/>:路径/>的启发因子,设置为路径长度的倒数,启发蚂蚁选择较短路径。/>:信息素浓度τ的重要程度参数。/>越大,蚂蚁选择路径越依赖历史信息素。/>启发因子η的重要程度参数。/>越大,蚂蚁选择路径越依赖启发式知识。
具体的,计算公式为:,按照/>计算每个路径的选择概率区间,生成一个随机数,根据路径概率区间,选择路径,重复以上步骤,直到完成一次遍历路径选择,多次迭代后,信息素与期望启发因子混合概率可引导蚂蚁快速找到较优解。
进一步的,构建轮盘赌选择机制:将每个个体的选择概率进行轮盘赌归一化处理,得到选择概率区间;生成一个随机数,根据随机数落在的选择概率区间,确定选择的个体;重复以上过程,直至每个蚂蚁选择过所有的个体。
其中,在蚁群算法中,选择概率是指蚂蚁在选择下一个节点或路径时,根据信息素和启发式信息计算得到的概率。选择概率越高,蚂蚁选择该路径的可能性就越大。轮盘赌选择机制是一种用于按概率选择个体的方法。每个个体的选择概率被映射到一个轮盘上的扇区,然后根据生成的随机数在轮盘上选择个体。选择概率越高的个体,其对应的扇区就越大,因此越容易被选择。具体的,对每个个体的选择概率进行归一化处理,确保所有个体的概率之和等于1。这是通过将每个个体的选择概率除以总体概率之和来实现的。在轮盘赌选择机制中,生成一个[0,1)范围内的随机数。然后,根据这个随机数落在的选择概率区间,确定选择的个体。这是通过计算累积概率,然后找到第一个累积概率大于随机数的个体来实现的。重复以上过程,直至每个蚂蚁选择过所有的个体。这确保了每个个体都有机会被选择,而且选择的概率符合其在轮盘上的分布。整个过程是在每一代中进行的,以影响蚂蚁群体在搜索空间中的路径选择。通过这种轮盘赌选择机制,蚂蚁群体可以在每次迭代中根据路径长度信息素概率选择下一个节点,从而影响路径的演化方向,促使算法更好地探索潜在的优秀解。
进一步的,模拟退火算法中的温度控制采用线性下降函数。其中,线性下降函数通常用于控制一个参数的逐渐减小,以模拟退火过程中系统温度的下降。在模拟退火算法中,温度是一个关键的参数,它控制了接受劣质解的概率。随着迭代的进行,温度逐渐下降,使得算法更趋向于在解空间中局部搜索,从而逐步收敛到全局最优解。线性下降函数可以用来模拟温度的下降过程。具体的,初始化温度,设定终止温度/>,温度下降频率/>,取值范围0到1。在外层循环中,每次迭代后更新温度:/>,其中,/>为当前温度,/>为更新后的温度。内层循环以当前温度/>运行Metropolis准则:产生新解;计算新旧解目标函数差值/>;如果/>小于0,接受新解;如果/>大于0,以概率/>接受新解。外层循环退出条件:当温度降到/>时,算法结束。通过线性下降函数减小温度,可以在保证足够迭代次数的前提下,逐步减少接受劣解的概率,使解收敛到全局最优。
3.有益效果
相比于现有技术,本申请的优点在于:
(1)通过融合粒子群算法、遗传算法、蚁群算法和模拟退火算法,有效绕过了单一算法的局限性,提高了全局最优解的寻找效果。通过多算法协同作业,系统更有在大范围的解空间中寻找全局最优解,从而优化有轨电车的布局;
(2)采用了遗传算法的初始解生成,粒子群算法的种群调整,蚁群算法的信息素更新,以及模拟退火算法的迭代优化。这种多算法协同的方式,使得系统能够在不同阶段利用各算法的优势,有效应对问题的多样性和复杂性,提高了布局优化的全局性;
(3)遗传算法中,采用了动态调整交叉率和变异率的策略。这使得算法能够根据优化进展情况动态调整参数,避免陷入局部最优解,提高了算法的鲁棒性和全局搜索能力;
综上所述,本申请,首先,根据运营数据建立包含列车总能耗最小化、充电站数量最小化和储能利用率最大化的多目标规划模型;然后,采用遗传算法生成初始解,以避免陷入局部最优;接着,利用粒子群算法进行位置优化,以实现快速全局搜索;之后,应用蚁群算法更新解集,以跳出局部最优区域;最后,采用模拟退火算法进行精确优化,以提高解集的质量,克服了单一算法的局限性,实现了更为全局性的优化。
附图说明
本说明书将以示例性实施例的方式进一步描述,这些示例性实施例将通过附图进行详细描述。这些实施例并非限制性的,在这些实施例中,相同的编号表示相同的结构,其中:
图1是根据本说明书一些实施例所示的一种基于粒子群算法的有轨电车车辆布局方法的示例性流程图;
图2是根据本说明书一些实施例所示的获取第一代种群的示例性流程图;
图3是根据本说明书一些实施例所示的获取第二代种群的示例性流程图;
图4是根据本说明书一些实施例所示的获取第三代种群的示例性流程图。
具体实施方式
下面结合附图对本说明书实施例提供的方法和系统进行详细说明。
图1是根据本说明书一些实施例所示的一种基于粒子群算法的有轨电车车辆布局方法的示例性流程图,获取运营数据,收集有轨电车的线路长度、站点分布、乘客流量等运营数据。收集A线、B线等所有运营线路的长度,A线长度12公里,B线长度10公里;A线设有10个站点,站点间距平均为1.2公里,B线设有8个站点,站点间距平均为1.25公里;每日早高峰A线载客量约5000人次,B线载客量约4000人次,每日傍晚高峰A线载客量约4000人次,B线载客量约3500人次;高峰发车间隔:A线3分钟一班,B线5分钟一班,运营时间:每日6:00到22:00,高峰7:00到9:00,17:00到19:00;线路长度、站点数从线路规划资料中收集,乘客流量从车载人数统计系统中收集,其他数据从运营规程中收集。
建立目标函数,根据运营数据,建立包括最小化能耗、充电站数量、最大化储能利用率在内的多目标规划模型。
目标函数:最小化能耗:,其中/>为第i段行驶的耗电功率,/>为行驶时间,最小化充电站数量:minN,其中N为充电站数量,最大化储能利用率:,其中/>为第i次充电可用电量,Q为电池容量。充电站容量约束:/>,其中Es为单个充电站容量,行驶时间约束:/>,其中T为单次行驶总时间。充电站数量权重/>,能耗权重/>,储能利用率权重/>。
图2是根据本说明书一些实施例所示的获取第一代种群的示例性流程图,生成初始解集,根据预设参数,采用随机化方法生成多个初始解作为遗传算法的初始种群。使用整数编码,每个解表示一种充电站布置方案。例如:,表示在距离起点2公里、4公里、7公里、9公里处设置充电站。设置种群大小为50。针对编码长度为10的解向量,按照以下方式随机生成初始解:随机生成/>区间内的整数,作为充电站位置,去除重复数字,检查设站距离约束,如两站距离过近则重新生成,生成50个符合要求的初始解,构成初始种群。以达到迭代次数100次或连续20代优化程度低于阈值作为终止条件。
遗传算法迭代,对初始种群进行选择、交叉、变异,生成新的种群,即第一代种群。采用轮盘赌选择方式,根据每个个体的适应度概率进行选择,生成交配池。计算每个个体的适应度:个体1适应度,个体2适应度/>,个体3适应度/>;计算每个个体的选择概率:/>,/>,/>。生成随机数0到1,如果落在/>区间,选个体1,如果落在/>区间,选个体2,依此类推进行选择;设定交配池容量为N=20。按照个体的适应度概率,通过轮盘赌依次选择个体。将选择的个体添加到交配池中,例如先选择个体3,个体5等。如果当前交配池已有个体数小于N,则返回第2步继续选择。当交配池中已有N个个体时,停止选择,将这N个个体作为父代返回。使用这N个父代个体进行交叉,生成子代新的种群。从交配池中选择两个父代个体,父代1:/>,父代2:/>,生成随机数/>,判断是否进行交叉,如果r 小于0.6,执行交叉操作,随机生成交叉点位置,设交叉点为第2位,进行单点交叉,子代1:/>,子代2:/>。将生成的新子代添加到种群,重复执行直至生成足够数量的新子代,用新子代替换原有种群中部分个体。
随机确定单点变异概率,设定为0.1,对每个新子代个体,生成随机数r,如果,进行变异,进行变异操作,例如个体:/>,随机更换其中一个充电站位置,变为:,重复以上步骤,直到所有新子代个体处理完毕,组合父代和变异后的新子代,选择部分适应性好的父代个体保留,更新种群,用新子代替换种群中的部分个体,直到种群大小符合要求,返回更新后的种群作为第一代种群。
针对新交叉生成的个体,以0.1的概率进行基因突变,突变方式为随机更换一个充电站位置。将交叉变异后的新个体和部分父代个体组合,构成新的第一代种群,种群规模保持不变。重复选择、交叉、变异操作,生成第二代、第三代种群,直到满足终止条件。输出最后一代的最优个体,作为算法结果。
图3是根据本说明书一些实施例所示的获取第二代种群的示例性流程图,粒子群位置更新,利用第一代种群中的解集信息,采用粒子群算法进行位置更新,生成第二代种群。以第一代种群中适应度最好的解作为全局最优粒子pg,其余解作为初始化粒子群。设定惯性权重,学习因子/>。针对每个粒子i,计算其速度:,根据速度更新每个粒子的解:,计算每个新解的适应度,并与个体最优做比较,更新个体最优。对粒子1:/>,对粒子2:;位置更新:,/>。个体最优比较,如果/>:/>,比较所有个体最优,获得当前全局最优解。反复进行速度更新、位置更新等操作,直至最大迭代次数。输出最后迭代得到的全局最优解作为第二代种群。遍历所有粒子的个体最优/>,比较个体最优的值,当前最好适应度的个体最优作为全局最优pg,设置最大迭代次数为100,初始化迭代次数计数器count=0,每迭代一次,count=count+1,当count达到最大迭代次数100时,终止迭代。最后迭代得到的全局最优pg,作为算法结果,将此全局最优解作为第二代种群,通过不断迭代获得全局优化,并根据终止条件判断结束算法,实现粒子群优化。
图4是根据本说明书一些实施例所示的获取第三代种群的示例性流程图,蚁群算法优化,对第二代种群,用蚁群算法更新解集的信息素值,生成第三代种群。将第二代种群中每个解作为蚁群算法的一个路径,计算路径长度(目标函数值),初始化信息素浓度。第二代种群为5个解:A,B,C,D,E,计算每个解的目标函数值作为路径长度:
。设置信息素浓度与路径长度成反比:
完成信息素浓度的初始化,设置迭代次数为50次。
对每只蚂蚁:根据信息素浓度概率选择路径所有蚂蚁完成一次遍历后统计路径访问数量。计算每个路径被选择的概率:
,通过轮盘赌,蚂蚁1选择了路径B。初始化访问统计:/>。
根据路径访问数量更新信息素浓度,重复迭代,直到达到设置次数。根据最后迭代得到的信息素浓度,选择浓度最高的前10条路径生成新种群。第三代种群,通过蚁群算法的正反馈机制实现种群进化优化。所有蚂蚁完成一次遍历后,10只蚂蚁结果为:;至此完成一次遍历过程。之后根据访问统计结果更新信息素。采用公式:/>,其中/>,/>(当蚂蚁选择路径k时),则本轮更新后:
,
多次迭代后,信息素浓度会聚集在较优路径上。设定迭代次数后,终止算法,并输出最新信息素浓度所对应的种群。
模拟退火精炼,应用模拟退火算法对第三代种群进行迭代优化,得到第四代种群。将第三代种群作为初始解,初始化温度T=100,设定终止温度,降温系数/>。迭代搜索,/>:随机产生新解/>,计算目标函数差值/>,如果/>:接受新解,否则以概率/>接受新解,降温:/>。将模拟退火结束时的最优解作为第四代种群,当温度降到/>时,算法结束,返回第四代种群。通过退火机制跳出局部最优,实现全局优化。设置当前温度T=0.5,终止温度/>,降温系数/>,当/>:/>,将温度降低,如果/>,返回。初始化最优解/>,每次接受一个新解s':如果:/>。当/>时,终止迭代。此时/>为模拟退火找到的最优解。将/>作为第四代种群并返回。通过迭代搜索与概率接受,避免陷入局部最优解。
输出最优解,从第四代种群中选择最优解,作为有轨电车的最佳布局方案。获取的第四代种群为5个解,计算每个解的适应值:/>
车辆布局,根据输出的最优解,规划有轨电车的车辆布局方案。比较适应度值,选择最小的D解作为最优解。打印最优解D的细节,包括充电站数量、位置等,作为算法的最终结果输出。根据方案D落实有轨电车的充电站规划和布局。通过种群优化和多智能算法,选择全局最优方案。最优解D的详情充电站数量:3个,充电站位置:站点1,起点3公里处;站点2,起点7公里处;站点3,起点9公里处,最优解规划方案详情:充电站数,3个充电站位置:3公里,7公里,9公里;目标函数值:0.5,在起点3公里、7公里、9公里处建设充电站,充电站容量根据运营需求设计,优化充电调度,利用多站点提高电池利用效率,相较单一充电站,多站点布局降低能耗成本,提升系统效率。
以上示意性地对本申请创造及其实施方式进行了描述,该描述没有限制性,在不背离本申请的精神或者基本特征的情况下,能够以其他的具体形式实现本申请。附图中所示的也只是本申请创造的实施方式之一,实际的结构并不局限于此,权利要求中的任何附图标记不应限制所涉及的权利要求。所以,如果本领域的普通技术人员受其启示,在不脱离本创造宗旨的情况下,不经创造性地设计出与该技术方案相似的结构方式及实施例,均应属于本申请的保护范围。此外,“包括”一词不排除其他元件或步骤,在元件前的“一个”一词不排除包括“多个”该元件。产品权利要求中陈述的多个元件也可以由一个元件通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。
Claims (10)
1.一种基于粒子群算法的有轨电车车辆布局方法,包括:
获取有轨电车的运营数据,运营数据包含线路长度、站点分布和乘客流量;
根据获得的运营数据,建立目标函数,其中,目标函数包含最小化列车总能耗、最小化充电站数量和最大化储能装置的利用率;
根据预设参数生成多个目标函数的初始解,作为种群的多个个体;
采用遗传算法对生成的多个个体进行选择、交叉和变异处理,生成新的种群,作为第一代种群;
采用粒子群算法调整第一代种群中各个体的位置,得到第二代种群;
采用蚁群算法更新第二代种群中各个体的信息素浓度,得到第三代种群;
对第三代种群采用模拟退火算法进行迭代计算,得到的种群作为第四代种群;
从第四代种群的多个个体中,选择目标函数值最优的个体作为最优解;
根据最优解对有轨电车车辆进行布局。
2.根据权利要求1所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
预设参数包括:种群大小、迭代次数、交叉率和变异率;
设置初始种群大小、迭代轮数上限、个体拟合度、交叉率和变异率;
循环执行以下步骤:
进行一次遗传算法迭代运算,记录当前迭代代数;
判断当前迭代代数是否达到设置的迭代轮数上限,如果达到则确定迭代次数,跳出循环;
如果未达到迭代轮数上限,则继续判断所有个体拟合度是否达到拟合度阈值,如果达到则确定迭代次数,跳出循环;
如果个体拟合度未达到阈值,则进行一下次迭代运算;
在每次迭代结束后,判断当前代的目标函数值是否小于上一代的目标函数值;
如果当前代目标函数值小于上一代的目标函数值,则当前连续未减小代数清零,否则当前连续未减小代数加1,当前连续未减小代数表示目标函数值相比上一代没有减小的迭代次数;
判断当前连续未减小代数是否达到预设正整数N,如果是则增大交叉率和变异率,否则减小交叉率和变异率。
3.根据权利要求2所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
生成第一代种群,包括如下步骤:
获取当前种群所有个体的目标函数值;
获取当前种群的规模大小N;
设置交叉池大小阈值M,其中交叉池用于存储目标函数值较大的个体;
重复执行以下步骤,直至交叉池内个体数达到M;
从当前种群中随机选择两个个体,进行组合;
比较选择的两个个体的目标函数值的大小;
将目标函数值较大的个体放入交叉池中。
4.根据权利要求3所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
生成第一代种群,还包括如下步骤:
获取交叉池中父代个体的数量作为交叉配对数;
从交叉池中随机选择两个父代个体;
在选择的父代个体的编码序列中,通过均匀随机数生成0到编码长度之间的随机数,作为交叉点;
将两个父代个体在交叉点之前的编码序列直接复制到两个子代个体对应的位置;
将两个父代个体在交叉点之后的编码序列对调后分别复制到两个子代个体中;
存储生成的子代个体,作为子代种群;
重复以上步骤,直至达到交叉配对数;
合并所有的子代种群,作为第一代种群。
5.根据权利要求4所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
第二代种群,包括如下步骤:
获取第一代种群中所有个体的位置、速度和适应度值,作为初始参数;
设置第二代种群终止迭代的最大代数、最小适应度误差/>和惯性权重/>;
重复进行以下步骤,直至迭代次数达到或适应度误差小于/>:
对每个个体i,计算个体i在当前位置的适应度值;
如果适应度值大于对应个体的历史最佳适应度/>时,将对应位置设置为个体i的最优解/>;
在所有的最优解中,选择适应度值/>最小的位置作为全局最优解/>;
计算全局最优解的适应度误差;
如果连续L代的全局最优解的适应度误差不变,则将当前迭代的惯性权重/>增加/>;
如果连续M代的全局最优解的适应度误差变小,则将当前迭代的惯性权重/>减小/>;
根据调整后的惯性权重,更新每个个体的速度和位置;
终止迭代后,输出全局最优解对应的个体,作为第二代种群。
6.根据权利要求5所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
采用目标函数作为适应度值。
7.根据权利要求6所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
第三代种群,包括如下步骤:
获取第二代种群中每个个体的目标函数值作为各个体的路径长度;
初始化每个个体上信息素浓度;
设置蚁群算法迭代次数NC,重复NC次以下迭代过程:
对每只蚂蚁,按照路径长度信息素概率,通过轮盘赌选择下一个个体;
计算每只蚂蚁遍历完所有个体后,获得的路径长度;
根据遍历路径长度,计算路径上每个个体的信息素浓度增量;
对所有个体,按照信息素浓度增量更新信息素浓度/>;
迭代结束后,按照信息素浓度最高的个体路径,作为第三代种群。
8.根据权利要求7所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
对每只蚂蚁,按照路径长度信息素概率,通过轮盘赌选择下一个个体,包括如下步骤:
计算每条路径上每个个体的选择概率,计算公式为:
;
其中,为蚂蚁从节点i选择到达节点j的概率;
为节点i到节点j的信息素浓度;
为节点i到节点j的期望启发因子,设置为路径长度的倒数;
为信息素重要程度参数;/>为期望启发因子重要程度参数。
9.根据权利要求8所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
构建轮盘赌选择机制:
将每个个体的选择概率进行轮盘赌归一化处理,得到选择概率区间;
生成一个随机数,根据随机数落在的选择概率区间,确定选择的个体;
重复以上过程,直至每个蚂蚁选择过所有的个体。
10.根据权利要求1至9任一所述的基于粒子群算法的有轨电车车辆布局方法,其特征在于:
模拟退火算法中的温度控制采用线性下降函数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410155262.9A CN117688968A (zh) | 2024-02-04 | 2024-02-04 | 一种基于粒子群算法的有轨电车车辆布局方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410155262.9A CN117688968A (zh) | 2024-02-04 | 2024-02-04 | 一种基于粒子群算法的有轨电车车辆布局方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117688968A true CN117688968A (zh) | 2024-03-12 |
Family
ID=90132407
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410155262.9A Pending CN117688968A (zh) | 2024-02-04 | 2024-02-04 | 一种基于粒子群算法的有轨电车车辆布局方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117688968A (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408589A (zh) * | 2014-10-24 | 2015-03-11 | 陕西科技大学 | 基于混合粒子群算法的agv优化调度方法 |
US20160300170A1 (en) * | 2015-04-08 | 2016-10-13 | Gufei Sun | Optimized placement of electric vehicle charging stations |
CN109542103A (zh) * | 2018-12-25 | 2019-03-29 | 北京理工大学 | 一种基于烟花粒子群算法的机器人焊接路径规划方法 |
CN113378345A (zh) * | 2020-03-09 | 2021-09-10 | 南京理工大学 | 一种基于遗传算法的储能式有轨电车充电站布局优化方法 |
CN113408823A (zh) * | 2021-07-13 | 2021-09-17 | 重庆理工大学 | 基于蚁群遗传的分布式约束优化问题求解方法及其应用 |
CN116822194A (zh) * | 2023-06-27 | 2023-09-29 | 北京工业大学 | 一种基于蚁群优化算法的电动汽车充电站选址方法 |
-
2024
- 2024-02-04 CN CN202410155262.9A patent/CN117688968A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104408589A (zh) * | 2014-10-24 | 2015-03-11 | 陕西科技大学 | 基于混合粒子群算法的agv优化调度方法 |
US20160300170A1 (en) * | 2015-04-08 | 2016-10-13 | Gufei Sun | Optimized placement of electric vehicle charging stations |
CN109542103A (zh) * | 2018-12-25 | 2019-03-29 | 北京理工大学 | 一种基于烟花粒子群算法的机器人焊接路径规划方法 |
CN113378345A (zh) * | 2020-03-09 | 2021-09-10 | 南京理工大学 | 一种基于遗传算法的储能式有轨电车充电站布局优化方法 |
CN113408823A (zh) * | 2021-07-13 | 2021-09-17 | 重庆理工大学 | 基于蚁群遗传的分布式约束优化问题求解方法及其应用 |
CN116822194A (zh) * | 2023-06-27 | 2023-09-29 | 北京工业大学 | 一种基于蚁群优化算法的电动汽车充电站选址方法 |
Non-Patent Citations (2)
Title |
---|
应夏晖 等: "电动汽车充电站的选址优化研究", 交通科技与经济, vol. 16, no. 01, 28 February 2014 (2014-02-28), pages 43 - 46 * |
齐琳 等: "基于改进粒子群算法的电动汽车充电站布局优化", 公路交通科技, vol. 34, no. 06, 15 June 2017 (2017-06-15), pages 136 - 143 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108764555B (zh) | 一种基于Hadoop的共享单车停放点选址方法 | |
CN111337931B (zh) | 一种auv目标搜索方法 | |
CN107370188A (zh) | 一种计及风电出力的电力系统多目标调度方法 | |
CN112378415B (zh) | 一种工器具的调度规划方法、装置及设备 | |
CN104156584A (zh) | 多目标优化差分进化算法的传感器目标分配方法及系统 | |
CN113222463B (zh) | 基于数据驱动的神经网络代理辅助露天矿无人卡车调度方法 | |
CN112230675B (zh) | 在协同搜救中考虑运行环境和性能的无人机任务分配方法 | |
CN109118023B (zh) | 一种公共交通线网优化方法 | |
CN111126687B (zh) | 一种交通信号的单点离线优化系统及方法 | |
CN111626492B (zh) | 一种电动汽车充电网络模糊多目标机会约束规划方法 | |
CN110034596A (zh) | WRSNs中基于SOM神经网络的多基站充电方法 | |
Tian et al. | Dynamic operation optimization based on improved dynamic multi-objective dragonfly algorithm in continuous annealing process. | |
CN110929950B (zh) | 一种电动汽车负荷预测方法及系统 | |
CN117688968A (zh) | 一种基于粒子群算法的有轨电车车辆布局方法 | |
CN116341860A (zh) | 一种基于改进nsga-ⅱ算法的车辆调度优化方法 | |
CN116541644A (zh) | 一种基于改进遗传算法的大件运输监测点布设系统 | |
CN114595862A (zh) | 一种可实现最低平均充电能耗的ev储能充电网络规划方法 | |
CN114329783A (zh) | 一种多目标电动汽车充电网络规划方法 | |
Chand et al. | Multi objective genetic approach for solving vehicle routing problem with time window | |
CN113220437B (zh) | 一种工作流多目标调度方法及装置 | |
CN113298315A (zh) | 一种基于双层编码的电动汽车充电站选址优化方法 | |
CN111932871A (zh) | 一种区域级实时交通控制策略推荐系统及方法 | |
CN111667138A (zh) | 基于多目标离散二进制粒子群算法的客服排班方法及装置 | |
CN111783988B (zh) | 求解环境经济调度问题的多目标灰色预测演化方法及系统 | |
CN107423846A (zh) | 一种基于改进粒子群算法的空间电力负荷预测方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |