请问该如何对已经得到的波形进行改善?
如图,上栏是电压波形,下栏是电流波形。上栏的电压波形太过于紊乱,下栏的电流波形尖顶波形状严重,不知道该如何改善,谢谢。
数据进行预处理,丝滑的数据有用
那么这和最小割有什么关系呢?
打开我的matlab。。。。。
clc;clear;
f = [0, 0, 2, 1, 3, 2, 1];
intcon = [1, 2, 3, 4, 5, 6, 7];
A = [-1, 1, 0, 0, -1, 0, 0;
-1, 0, 0, 0, 0, -1, 0;
0, -1, 0, 0, 0, 0, -1];
b = [0; -1; -1];
Aeq = [-1, 0, 1, 0, 0, 0, 0;
0, -1, 0, 1, 0, 0, 0];
beq = [0; 0];
lb = zeros(7,1);
ub = [1;1;1;1;1;1;1]; % Enforces x(3) is binary
[x,fval,exitflag,output] = intlinprog(f,intcon,A,b,Aeq,beq,lb,ub);
disp(x);
算完了发现结果是
也就是yu=1,yv=1,z1=1,z2=1,对着图看一下
发现最小割,确实就是红线指的那个,最小割也就是3.
说了这么多,我自己会不会算整数规划呢?手算一下试试
首先内点法肯定是不错的方法,可惜手推麻烦,画图又不会。。。。
那么还是先看个例子吧
对于这个问题,直接LP,求得解不满足x1,x2,x3试试整数,由于x1=1.25,那么向上向下各取一个整数边界,即小于等于1和大于等于2,
问题转化
发现P1的结果已经满足x1为整数, 继续转化,其中因为是最小化,如果向上向下都有解,那么选择小的,结果如下
P5时满足条件,则求解完成。
虽然我们这里变量都是0-1变量不过不影响,只是确定的更快而已,那就是如何手撕LP了,选择单纯形法最多用了,试试
只算了一次,还需要迭代,不保证算对。。。但是感觉没算错,有意者参考单纯形法实例
最大流和最小割的转化就是哪个好算用哪个,而最小割一般就是中间两排节点之间的度为INF,这时候也就只能割S到第一排或者第二排到T。
而中间两排节点之间度怎么理解,我觉得就是你吧一个问题转化为网络流问题时,若是存在不可分割的东西,就想象用最小割,而它们之间的边的度就是INF。