function [Alpha1,Alpha2,Alpha,Flag,B]=SVMNR3(x,y,Epsilon,C,D)
nntwarn off
[X,XS]=premnmx(x);
[Y,YS]=premnmx(y);
%第一步:构造K矩阵
l=size(X,2);
K=zeros(l,l);
for i=1:l
for j=1:l
xi=X(:,i);
xj=X(:,j);
%K(i,j)=sum(xi.*xj);
%K(i,j)=(sum(xi.*xj)+1)^20;%注意:核函数在此定义!
K(i,j)=exp(-(norm((xi-xj).^2)/D));
%K(i,j)=exp(-(sum((xi-xj))/100));
end
end
%第二步:构造二次规划模型参数H,Ft,Aeq,Beq,lb,ub
H=[K,-K;-K,K];
H=(H+H')/2;
Ft=[Epsilon*ones(1,l)-Y,Epsilon*ones(1,l)+Y];
Aeq=[ones(1,l),-ones(1,l)];
Beq=0;
lb=eps.*ones(2*l,1);
ub=C*ones(2*l,1);
%第三步:调用优化工具箱quadprog函数求解二次规划
OPT=optimset;
OPT.LargeScale='off';