发布网友
共1个回答
热心网友
cols=100;%样本数量
p=zeros(2,cols);%这个不要也可以,但效率会低一点
t=zeros(2,cols);
for i=1:cols
theta1=rand()*pi/2;
theta2=rand()*pi/2;
x=L1*cos(theta1)+L2*cos(theta1+theta2);%L1、L2需要预定义
y=L1*sin(theta1)+L2*sin(theta1+theta2);
p(1,i)=theta1;
p(2,i)=theta2;
t(1,i)=x;
t(2,i)=y;
end
%接下来用newff、train、sim函数
代码如上。
newff函数的格式为:
net=newff(PR,[S1 S2 ...SN],{TF1 TF2...TFN},BTF,BLF,PF),函数newff建立一个可训练的前馈网络。输入参数说明:
PR:Rx2的矩阵以定义R个输入向量的最小值和最大值;
Si:第i层神经元个数;
TFi:第i层的传递函数,默认函数为tansig函数;
BTF:训练函数,默认函数为trainlm函数;
BLF:权值/阀值学习函数,默认函数为learngdm函数;
PF:性能函数,默认函数为mse函数。
追问这个参数应该怎么设置啊,这个是做二关节的机器臂,L1和L2是臂长,θ1和θ2是转角,[X,Y]是机器臂末端坐标,请问该如何弄啊?追答输入节点数为2,输出节点数也为2,隐节点通过试凑得到,估计是3-10,PR可设为[0 pi/2;0 pi/2]。