窃电负荷曲线
时间:2019-09-18
本文章向大家介绍窃电负荷曲线,主要包括窃电负荷曲线使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
窃电负荷曲线一般都是难以大规模的获取,但是在电力系统仿真中可能需要用到相关的数据集,相关的论文一般都采用“攻击模型”以获取对应的偷电曲线。我查看了好几个论文最后,编写了6种不同类型窃电负荷曲线的模型。
很想吐槽,原本想查找窃电模型,却无意中发现一篇疑似“抄袭”的论文,中文期刊连图估计都是截的,不管如何,也算帮我们做好了翻译工作了……话不多少先看真实曲线和对应的6种窃电曲线。
真实曲线
6种不同的窃电模型
%x是真实曲线 x=[0.699 0.462 0.117 0.108 0.081 0.086 0.102 0.09 0.068 0.107 0.092 0.078 0.103 0.085 0.163 0.152 0.291 0.167 0.324 0.123 0.142 0.196 0.272 0.318 0.264 0.241 0.241 0.257 0.197 0.237 0.224 0.285 0.276 0.345 0.691 0.751 0.714 1.5779999 1.587 1.4450001 1.081 1.022 0.772 0.684 0.731 0.849 0.745 0.7]; %产生多种不同的异常样本 AttackX=zeros(6,48); %类型1 AttackX(1,:)=x*(0.7*rand()+0.1); %类型2 minOfftime=4; Ts=floor((23-minOfftime+1)*rand(1,1)+0);%产生一个0-19之间的数字 Duration=floor(21*rand(1,1)+minOfftime);%产生一个4-24之间的数字 Te=Ts+Duration; %原本的分辨率是30min,现在帮这些全部乘以2变成半小时的分辨率 Ts=Ts*2; Te=Te*2; for j=1:48 if (j>Ts)&&(j<Te) AttackX(2,j)=0; else AttackX(2,j)=x(j); end end %类型3 AttackX(3,:)=x.*(0.7*rand(1,48)+0.1); %类型4 AttackX(4,:)=mean(x)*(0.7*rand(1,48)+0.1); %类型5 AttackX(5,:)=mean(x); %类型6 AttackX(6,:)=x(:,48:-1:1); x=1:48; h1=plot(x,AttackX(1,:),'m.-','markersize',15);set(h1,'LineWidth',4.5) hold on; h2=plot(x,AttackX(2,:),'ko-'); set(h2,'LineWidth',4.5); h3=plot(x,AttackX(3,:),'r+-'); set(h3,'LineWidth',4.5); h4=plot(x,AttackX(4,:),'cx-'); set(h4,'LineWidth',4.5); h5=plot(x,AttackX(5,:),'g*-');set(h5,'LineWidth',4.5); h6=plot(x,AttackX(6,:),'b*-');set(h6,'LineWidth',4.5); legend('类型1','类型2','类型3','类型4','类型5','类型6');
参考文献:
1.汤典艳, 林伟. 异常用电检测中解决样本不平衡问题的新方法[J]. 工业控制计算机, 2017(3).
2.Jokar P , Arianpoo N , Leung V C M . Electricity Theft Detection in AMI Using Customers\" Consumption Patterns[J]. IEEE Transactions on Smart Grid, 2015:1-1.
原文地址:https://www.cnblogs.com/nanhaijindiao/p/11542773.html
- 唯一不变的就是一直在变”--“数据”的华丽“变身术”
- 借用 疯狂秀才 的页面,修改了一下自然框架后台管理的页面。
- PDF.NET(PWMIS数据开发框架)之SQL-MAP目标和规范
- PDF.NET数据开发框架 之SQL-MAP使用存储过程
- 用接口实现事件的一种方法,只是玩玩。
- 国内研究人员首次Wifi重大漏洞利用实现 | Krack攻击测试套件打包
- 想成为优秀程序员必知的要点
- Attribute(特性),怎么用才更好?
- 如何使用Airgeddon搭建基于软件的WIFI干扰器
- 还在写SQL的同志,去喝杯咖啡吧!
- 使用XSD编写具有智能提示的XML文件(以SQL-MAP脚本为实例)
- 一个利用CVE-2017-11292的APT样本技术分析(一)
- Attribute(特性),怎么用才更好? —— 字段编号被误解了
- PDF.NET的SQL日志 ASP.net 路径问题 详解
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 在Linux中如何轻松删除源安装的软件包
- linux系统 java环境变量的配置方法
- Apache 文件上传与文件下载案例详解
- 前端CLI脚手架思路解析并从0到1搭建
- Linux中搭建完整的samba服务器全攻略(centos版)
- Linux 命令行通配符及转义符的实现
- Linux采用双网卡bond、起子接口的方式
- 在Linux分区或逻辑卷中创建文件系统的方法
- Linux下通过sed命令对kv方式的配置文件进行修改
- Linux中将txt导入到mysql的方法教程
- LNMP部署及HTTPS服务开启教程
- 在 Linux 上锁定虚拟控制台会话的实现方法
- Linux中split大文件分割和cat合并文件详解
- centos下安装配置phpMyAdmin的方法步骤
- ubuntu中python调用C/C++方法之动态链接库详解