一、粒子群算法电动汽车充电优化

1 电动汽车充电负荷估算
电动汽车的充电负荷主要与电动汽车起始充电时刻和充电时长相关,而起始充电时刻是由电动汽车用户的到家时间决定的,充电时长主要与电动汽车的行驶里程和充电倍率相关。

目前电动汽车还没有大规模运营, 只能通过统计燃油车的相关规律来代替电动汽车。对北京市某小区的私家车用户进行统计,回家时间主要分为三种: 一是正常朝九晚五的上班族,到家时间基本服从N(17.6,1.3)的正态分布, 这类用户占的比重最大;二是加班或者上半夜班的用户,到家时间基本服从N (0.7,1.6)的正态分布;三是少部分后半夜上班的人,到家时间基本服从N (7.8,1.22)的正态分布。三类用户所占的比例分别为0.68、0.24和0.08。
目前大部分私人用电动汽车的常规充电功率约为3 k W,根据以上相关信息,可以通过蒙特卡洛计算机仿真模拟方法,求出包含上述三类用户的居民小区平均每天一辆电动汽车的充电功率需求,如图1所示。

图1电动汽车一天平均充电功率需求
根据电动汽车平均一天的充电功率需求曲线,只要设置居民小区的电动汽车用户数量,就可以求出相应规模电动汽车的充电负荷曲线。

2 光伏出力曲线和常规用电负荷
固定铺设面积的光伏出力曲线主要与光照强度和温度相关,在实际条件下主要表现为天气变化和季节性变化。通过对某楼顶10 k W光伏发电系统功率输出数据进行统计和处理,可得不同季节该光伏发电系统满发的出力曲线,如图2所示。

图2四季光伏满发出力曲线

居民小区的负荷曲线主要和小区的用户规模相关,通过对北京市某小区居民楼的实际负荷数据进行统计,可得夏季和冬季每户平均家庭常规用电负荷曲线,如图3所示。

图3某小区每户平均家庭常规负荷曲线

2 电动汽车优化充电模型
2.1 目标函数

本文以平抑小区配电网的负荷波动和降低电动汽车用户充电电费为小区电动汽车充电优化的目标函数。以分钟为单位,将一天分为1 440 min。

1)以平抑负荷波动为目标函数
2)以用户电费最少为目标函数
针对上述两个目标,考虑两者目标函数的量纲不同,对每个目标函数进行规范化,采用线性加权和法将多目标优化问题转化为单目标优化问题,

2.2 约束条件
居民小区电动汽车充电优化调度的约束条件主要满足用户使用方面和电网运行的要求。对于用户使用方面的要求主要体现在用户开始充电时间和充电时长;对于电网运行的要求主要体现在总功率不能超过电网节点功率的限制。

1)用户需求约束
本约束条件的要求是要保证电动汽车在用户离开家的时间之前完成充电。

2)电网运行约束
本约束条件的要求是要保证小区在引入电动汽车充电负荷和光伏发电输出的情况下,电网节点的功率要维持在电网的合理安全范围之内。

2.3求解方法
居民小区电动汽车的优化充电问题是一个多维、多变量、多约束条件以及非线性的优化问题,线性规划等经典优化算法难以解决。这里采用粒子群优化算法,考虑到基本粒子群算法容易陷入局部最优的问题,本文将采用改进的自适应变异粒子群优化算法进行求解。

粒子群算法即模拟鸟群的捕食行为,通过鸟群的集体协作达到群体最优值,算法通过式(9) 和式(10)实现粒子位置和速度的更新
式中,ω为惯性权重,一般在0.1 ~0.9之间取值; d=1,2,…,D;i=1,2,…,n;k为当前迭代次数;Vid为粒子的速度;Xid为粒子的位置;c1和c2为非负的常数,称为加速度因子;r1和r2为0~1区间的随机数。

粒子群优化算法存在早熟收敛现象,需要对惯性权重和学习因子进行改进。对于惯性权重ω, 若ω在0.5~1之间随机取值,则实验表明该算法比线性递减策略准确度更高,收敛速度更快
对于学习因子c1和c2采用非线性反余弦加速, c1先大后小,而c2先小后大,能解决陷入局部最优的问题。基本思想是搜索初期粒子飞行主要参考本身的历史信息c1,到了后期则更加注重群体信息c2,即
根据上述分析,得到相应的优化算法的求解过程如下:

1)初始化粒子群中粒子的位置与速度,并根据约束条件对粒子位置进行修正。

2)计算粒子的适应度值(目标函数值)。

3)将个体最优值设置为当前位置,群体最优值gbest设置为初始群体中最佳粒子的位置。

4)再根据式(9)和式(10)更新粒子速度和相应位置。

5)计算粒子群粒子的适应度,更新并记录粒子最优位置和群体最优位置。

6)根据式(14)式(16)计算群体适应度方差σ2。

7)根据式(17)计算变异概率pm。

8)产生在0~1的随机数,如果该数小于变异概率pm,则执行式(18)的变异操作,并进行相应修正。

9)判断是否达到结束条件,如果为真,则停止计算,并输出优化的解;如果为假,返回步骤4)。

二、部分源代码

function[info,fv] = PSO2(N,c1,c2,w,M,knownEV_info,k,n,timeInterval,load_grid)
% info EVs with the start times which give the smallest fitness value
% fv the smallest fitness value

% c1,c2 learning factor
% w inertia weight
% M maximum number of iterations
% D number of vehicles needed to be arranged %need to be changed to vinfo
% N number of particles
% k kth interval to be arranged

% EVs with manageable start time
aEV = knownEV_info(find(knownEV_info(:,5) >= (k-1)*timeInterval)

【优化充电】基于matlab粒子群算法电动汽车充电动态优化策略【含Matlab源码 2163期】相关推荐

  1. 【PSO三维路径规划】基于matlab粒子群算法无人机三维路径规划【含Matlab源码 015期】

    一.无人机简介 0 引言 随着现代技术的发展,飞行器种类不断变多,应用也日趋专一化.完善化,如专门用作植保的大疆PS-X625无人机,用作街景拍摄与监控巡察的宝鸡行翼航空科技的X8无人机,以及用作水下 ...

  2. 【PSO三维路径规划】基于matlab粒子群算法无人机三维路径规划【含Matlab源码 1260期】

    一.无人机简介 0 引言 随着现代技术的发展,飞行器种类不断变多,应用也日趋专一化.完善化,如专门用作植保的大疆PS-X625无人机,用作街景拍摄与监控巡察的宝鸡行翼航空科技的X8无人机,以及用作水下 ...

  3. 【布局优化】基于改进粒子群算法实现充电桩选址优化问题附matlab代码

    1 简介 当前世界环境污染和能源危机问题凸显,电动汽车以零排放和低耗能的优势得到各国的大力关注和支持.以电动汽车为代表新能源汽车产业,成为国家七大战略性新兴产业之一.电动汽车具有良好的发展前景,市场规 ...

  4. 【PSO三维路径规划】基于matlab粒子群算法无人机三维路径规划【含Matlab源码 192期】

    ⛄一.无人机简介 无人机的航迹规划是指在综合考虑无人机飞行油耗.威胁.飞行区域以及自身物理条件限制等因素的前提下, 为飞行器在飞行区域内规划出从初始点到目标点最优或者满意的飞行航迹, 其本质是一个多约 ...

  5. 【配电网重构】基于matlab粒子群算法33节点配电网重构【含Matlab源码 1829期】

    ⛄一.配电网重构简介 1 配电网重构的数学模型 1.1 配电网重构的目标函数 配电网重构的数学模型实质就是多目标多约束的最优解问题, 配网重构的目标一般由以下几类: (1) 配电网最小网损为目标; ( ...

  6. 【电力系统】基于matlab粒子群算法求解热电联产系统优化配置问题【含Matlab源码 2298期】

    ⛄一.热电联产系统优化配置问题 1 能量枢纽模型 能量枢纽模型通过增加能源的供给路径提升能源系统的经济性.灵活性和安全性[6].图1展示了一种典型的能量枢纽模型. 图1 典型能量枢纽模型示意图 1.2 ...

  7. 【优化布局】基于matlab粒子群算法求解充电站布局优化问题【含Matlab源码 012期】

    ⛄一.粒子群算法简介 1 引言 自然界中的鸟群和鱼群的群体行为一直是科学家的研究兴趣所在.生物学家Craig Reynolds在1987年提出了一个非常有影响的鸟群聚集模型,在他的仿真中,每一个个体都 ...

  8. 【ACO TSP】基于matlab蚁群算法求解31城市旅行商问题【含Matlab源码 1147期】

    一.获取代码方式 获取代码方式1: 完整代码已上传我的资源:[TSP]基于matlab蚁群算法求解31城市旅行商问题[含Matlab源码 1147期] 点击上面蓝色字体,直接付费下载,即可. 获取代码 ...

  9. 【Matlab图像融合】小波变换遥感图像融合【含GUI源码 744期】

    一.代码运行视频(哔哩哔哩) [Matlab图像融合]小波变换遥感图像融合[含GUI源码 744期] 二.matlab版本及参考文献 1 matlab版本 2014a 2 参考文献 [1] 包子阳,余 ...

最新文章

  1. short s1 = 1; s1 = s1 + 1;有错而short s1 = 1; s1 += 1正确
  2. c#如何用一个程序打开另一个程序(如:窗体的注销重启)
  3. SQL having 子句示例 - 使用Sqlite演示
  4. python 语言教程(3)变量之字典
  5. 扩展方法必须在非泛型静态类中定义
  6. oracle 约束 Oracle 10g学习系列(5)
  7. mysql语句随机数_程序生成随机数与SQL语句生成随机数
  8. 蓝桥杯2015 C语言大学B组 C/C++
  9. asp生成和导出excel和word数据源码和代码,简单好用(已经测试可以用)
  10. centos6.8安装mysql5.6【转】
  11. Linux下的经典软件-史上最全
  12. C++ 泛型编程-模板
  13. 酒店管理系统(功能结构图、E-R图、用例图)
  14. 军事指挥系统时间同步解决方案
  15. SpringData JPA联表分页查询需要使用countQuery属性
  16. 短信注册验证以及邮箱激活
  17. 信迈AM5728 DSP+ARM高性能图像处理核心板功能介
  18. Andriod Studio 连接华为手机调试
  19. AVR单片机开发2——流水灯及仿真
  20. 网络推广宝 v2007 官方

热门文章

  1. LC100-A全功能型电感电容表,电感表,电容表,LC meter串口数据
  2. android 展开菜单,Android之可收缩展开列表ExpandableList
  3. 一次解决时区所有疑问
  4. jmeter XPath Extractor
  5. springboot实现增量备份_SpringBoot几种定时任务的实现方式
  6. UG 是当今较为流行的一种模具设计软件
  7. 论文研读-文献聚类可视化-文献聚类结果可视分析方法研究
  8. python利用try except进行展示异常报错信息
  9. 易邮邮件监控 v2.0 是什么
  10. JavaMail实现邮箱激活功能