【Python】可再生能源发电与电动汽车的协同调度策略研究

简介: 【Python】可再生能源发电与电动汽车的协同调度策略研究

1 主要内容

之前发布了《可再生能源发电与电动汽车的协同调度策略研究》matlab版本程序,本次发布的为Python版本,采用gurobi作为求解器,有需要的可以下载对照学习研究。

首先详细介绍了优化调度模型的求解方案,分别采用二次规划、二阶锥规划对上下层模型进行求解,所采用的算法相较于智能算法求解速度更快,求解结果更准确。针对下层模型的非凸性,采用二阶锥松弛方法将将原问题的非凸可行域松弛为一个凸二阶锥可行域,提高了求解效率和准确性,并且对于辐射型网络,利用二阶锥松弛建立的松弛模型是严格的,通过二阶锥规划求解出的下界值就是原问题的最优解。然后,以改进的IEEE33节点配电网系统进行仿真,仿真结果表明,本文所提调度策略可以有效降低负荷峰谷差,降低系统网损,改善系统电压水平等。

2 部分代码

#约束
    Column51 =PF33.addConstr((lin1[0]==abs_(pev1[0])), name='column51')#电动汽车无功约束
    Column5 = PF33.addConstr((qev1[0]<=0.95*lin1[0]), name='column5')
    Column61 =PF33.addConstr((lin2[0]==abs_(pev2[0])), name='column61')
    Column6 = PF33.addConstr((qev2[0]<=0.95*lin2[0]), name='column6')
    Column71 =PF33.addConstr((lin3[0]==abs_(pev3[0])), name='column71')
    Column7 = PF33.addConstr((qev3[0]<=0.95*lin3[0]), name='column7')
    
    
    Column8 = PF33.addConstr((qev1[0]>=-0.95*lin1[0]), name='column8')
    Column9 = PF33.addConstr((qev2[0]>=-0.95*lin2[0]), name='column9')
    Column10 = PF33.addConstr((qev3[0]>=-0.95*lin3[0]), name='column10')
    
    if i in range(0,15):
        Column11 = PF33.addConstr((pev1[0]<=num_ask0*50/1000), name='column11')#电动汽车有功约束---充电
        Column12 = PF33.addConstr((pev1[0]>=0), name='column12')
        Column13 = PF33.addConstr((pev2[0]<=num_ask1*50/1000), name='column13')
        Column14 = PF33.addConstr((pev2[0]>=0), name='column14')
        Column15 = PF33.addConstr((pev3[0]<=num_ask2*50/1000), name='column15')
        Column16 = PF33.addConstr((pev3[0]>=0), name='column16')
    elif i in range(15,24):
        Column11 = PF33.addConstr((pev1[0]>=-num_ask0*50/1000), name='column11')#电动汽车有功约束---放电
        Column12 = PF33.addConstr((pev1[0]<=0), name='column12')
        Column13 = PF33.addConstr((pev2[0]>=-num_ask1*50/1000), name='column13')
        Column14 = PF33.addConstr((pev2[0]<=0), name='column14')
        Column15 = PF33.addConstr((pev3[0]>=-num_ask2*50/1000), name='column15')
        Column16 = PF33.addConstr((pev3[0]<=0), name='column16')


3 程序结果

4 下载链接

见下方联系方式

相关文章
|
4天前
|
机器学习/深度学习 数据采集 算法
Python实现ISSA融合反向学习与Levy飞行策略的改进麻雀优化算法优化支持向量机回归模型(SVR算法)项目实战
Python实现ISSA融合反向学习与Levy飞行策略的改进麻雀优化算法优化支持向量机回归模型(SVR算法)项目实战
|
4天前
|
Python
不容错过!Python中图的精妙表示与高效遍历策略,提升你的编程艺术感
【7月更文挑战第11天】在Python编程中,图以邻接表或邻接矩阵表示,前者节省空间,后者利于查询连接。通过字典实现邻接表,二维列表构建邻接矩阵。图的遍历包括深度优先搜索(DFS)和广度优先搜索(BFS)。DFS使用递归,BFS借助队列。这些基础技巧对于解决复杂数据关系问题,如社交网络分析或迷宫求解,至关重要,能提升编程艺术。
13 5
|
4天前
|
机器学习/深度学习 数据采集 算法
Python实现ISSA融合反向学习与Levy飞行策略的改进麻雀优化算法优化支持向量机分类模型(SVC算法)项目实战
Python实现ISSA融合反向学习与Levy飞行策略的改进麻雀优化算法优化支持向量机分类模型(SVC算法)项目实战
|
10天前
|
机器学习/深度学习 算法 数据挖掘
Python强化学习应用于数据分析决策策略:** - 强化学习让智能体通过环境互动学习决策。
【7月更文挑战第5天】**Python强化学习应用于数据分析决策策略:** - 强化学习让智能体通过环境互动学习决策。 - Python因丰富库(如TensorFlow, PyTorch, Keras, Pandas, NumPy)和生态而受青睐。 - 使用OpenAI Gym构建环境,如`gym.make(&#39;CartPole-v0&#39;)`。 - 选择模型,例如神经网络,定义策略如Q-Learning。 - 训练模型,调整智能体行为,如Q-Learning更新Q表。 - 最后评估模型性能,实现数据驱动决策。
23 3
|
13天前
|
设计模式 存储 算法
Python 的策略
【7月更文挑战第2天】Python 的策略
13 1
|
13天前
|
监控 Unix 开发者
Python 3.9的多进程优化策略具体是如何实现的?
【7月更文挑战第2天】Python 3.9的多进程优化策略具体是如何实现的?
13 1
|
4天前
|
算法 数据处理 开发者
超越传统:Python二分查找的变种策略,让搜索效率再上新台阶!
【7月更文挑战第11天】二分查找算法在有序数组中以O(log n)效率搜索元素。本文扩展了这一概念,介绍了3种Python变种:1) 查找第一个匹配值的位置,2) 找到最后一个匹配值,3) 在旋转有序数组中搜索。通过调整边界条件,这些变种增强了二分查找的适用性。代码示例展示了如何实现这些策略,以优化不同场景下的搜索效率。
7 0
|
1月前
|
机器学习/深度学习 存储 算法
解锁棋盘之谜:探索N皇后问题的全方位解决策略【python 力扣51题】
解锁棋盘之谜:探索N皇后问题的全方位解决策略【python 力扣51题】
|
1月前
|
存储 算法 搜索推荐
掌握区间合并:解决实际问题的算法策略和应用案例【python LeetCode题目56】
掌握区间合并:解决实际问题的算法策略和应用案例【python LeetCode题目56】
|
13天前
|
算法 Java C++
C++和Python在内存分配策略上的主要区别是什么?
【7月更文挑战第2天】C++和Python在内存分配策略上的主要区别是什么?
12 0