|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
- function y=bp_net(x)
- %-----------------------------------------------
- %经十路与山大路交叉口,星期一由东向西的车流量
- P=[320 352 311 330 268 295 317 286 ;
- 352 311 330 268 295 317 286 295 ;
- 311 330 268 295 317 286 295 310 ;
- 330 268 295 317 286 295 310 326 ;
- 268 295 317 286 295 310 326 332 ;
- 295 317 286 295 310 326 332 361 ;
- 317 286 295 310 326 332 361 347 ;
- 286 295 310 326 332 361 347 305 ;
- 295 310 326 332 361 347 305 287 ;
- 310 326 332 361 347 305 287 296 ;
- 326 332 361 347 305 287 296 311 ;
- 332 361 347 305 287 296 311 287 ;
- 361 347 305 287 296 311 287 256 ;
- 347 305 287 296 311 287 256 229 ;
- 305 287 296 311 287 256 229 184 ;
- 287 296 311 287 256 229 184 176 ;
- 296 311 287 256 229 184 176 130 ;
- 311 287 256 229 184 176 130 157 ;
- 287 256 229 184 176 130 157 234 ;
- 256 229 184 176 130 157 234 250 ;
- 229 184 176 130 157 234 250 267 ;
- 184 176 130 157 234 250 267 253 ;
- 176 130 157 234 250 267 253 306 ;
- 130 157 234 250 267 253 306 347 ;
- 157 234 250 267 253 306 347 290 ;
- 234 250 267 253 306 347 290 336 ;
- 250 267 253 306 347 290 336 229 ;
- 267 253 306 347 290 336 229 263 ;
- 253 306 347 290 336 229 263 230 ;
- 306 347 290 336 229 263 230 257 ;
- 347 290 336 229 263 230 257 211 ;
- 290 336 229 263 230 257 211 193 ;
- 336 229 263 230 257 211 193 201 ;
- 229 263 230 257 211 193 201 236 ;
- 263 230 257 211 193 201 236 266 ;
- 230 257 211 193 201 236 266 347 ;
- 257 211 193 201 236 266 347 206 ;
- 211 193 201 236 266 347 206 211 ;
- 193 201 236 266 347 206 211 217 ;
- 201 236 266 347 206 211 217 245 ;
- 236 266 347 206 211 217 245 230 ;
- 266 347 206 211 217 245 230 219 ;
- 347 206 211 217 245 230 219 183 ;
- 206 211 217 245 230 219 183 156 ;
- 211 217 245 230 219 183 156 130 ;%Monday
- 344 367 329 343 277 296 302 269 ;
- 367 329 343 277 296 302 269 305 ;
- 329 343 277 296 302 269 305 317 ;
- 343 277 296 302 269 305 317 344 ;
- 277 296 302 269 305 317 344 320 ;
- 296 302 269 305 317 344 320 331 ;
- 302 269 305 317 344 320 331 357 ;
- 269 305 317 344 320 331 357 310 ;
- 305 317 344 320 331 357 310 298 ;
- 317 344 320 331 357 310 298 287 ;
- 344 320 331 357 310 298 287 266 ;
- 320 331 357 310 298 287 266 256 ;
- 331 357 310 298 287 266 256 221 ;
- 357 310 298 287 266 256 221 148 ;
- 310 298 287 266 256 221 148 184 ;
- 298 287 266 256 221 148 184 130 ;
- 287 266 256 221 148 184 130 107 ;
- 266 256 221 148 184 130 107 186 ;
- 256 221 148 184 130 107 186 177 ;
- 221 148 184 130 107 186 177 255 ;
- 148 184 130 107 186 177 255 277 ;
- 184 130 107 186 177 255 277 237 ;
- 130 107 186 177 255 277 237 314 ;
- 107 186 177 255 277 237 314 351 ;
- 186 177 255 277 237 314 351 287 ;
- 177 255 277 237 314 351 287 362 ;
- 255 277 237 314 351 287 362 327 ;
- 277 237 314 351 287 362 327 258 ;
- 237 314 351 287 362 327 258 235 ;
- 314 351 287 362 327 258 235 241 ;
- 351 287 362 327 258 235 241 205 ;
- 287 362 327 258 235 241 205 195 ;
- 362 327 258 235 241 205 195 203 ;
- 327 258 235 241 205 195 203 201 ;
- 258 235 241 205 195 203 201 203 ;
- 235 241 205 195 203 201 203 213 ;
- 241 205 195 203 201 203 213 217 ;
- 205 195 203 201 203 213 217 235 ;
- 195 203 201 203 213 217 235 230 ;
- 203 201 203 213 217 235 230 221 ;
- 201 203 213 217 235 230 221 153 ;
- 203 213 217 235 230 221 153 122 ;
- 213 217 235 230 221 153 122 130 ;%Tuesday
- 325 330 356 381 343 322 327 299 ;
- 330 356 381 343 322 327 299 337 ;
- 356 381 343 322 327 299 337 324 ;
- 381 343 322 327 299 337 324 320 ;
- 343 322 327 299 337 324 320 311 ;
- 322 327 299 337 324 320 311 340 ;
- 327 299 337 324 320 311 340 325 ;
- 299 337 324 320 311 340 325 333 ;
- 337 324 320 311 340 325 333 312 ;
- 324 320 311 340 325 333 312 289 ;
- 320 311 340 325 333 312 289 267 ;
- 311 340 325 333 312 289 267 259 ;
- 340 325 333 312 289 267 259 262 ;
- 325 333 312 289 267 259 262 180 ;
- 333 312 289 267 259 262 180 165 ;
- 312 289 267 259 262 180 165 125 ;
- 289 267 259 262 180 165 125 127 ;
- 267 259 262 180 165 125 127 108 ;
- 259 262 180 165 125 127 108 115 ;
- 262 180 165 125 127 108 115 140 ;
- 180 165 125 127 108 115 140 180 ;
- 165 125 127 108 115 140 180 202 ;
- 125 127 108 115 140 180 202 208 ;
- 127 108 115 140 180 202 208 175 ;
- 108 115 140 180 202 208 175 189 ;
- 115 140 180 202 208 175 189 192 ;
- 140 180 202 208 175 189 192 206 ;
- 180 202 208 175 189 192 206 201 ;
- 202 208 175 189 192 206 201 200 ;
- 208 175 189 192 206 201 200 202 ;
- 175 189 192 206 201 200 202 211 ;
- 189 192 206 201 200 202 211 200 ;
- 192 206 201 200 202 211 200 197 ;
- 206 201 200 202 211 200 197 180 ;
- 201 200 202 211 200 197 180 176 ;
- 200 202 211 200 197 180 176 150 ;
- 202 211 200 197 180 176 150 154 ;
- 211 200 197 180 176 150 154 198 ;
- 200 197 180 176 150 154 198 220 ;
- 197 180 176 150 154 198 220 250 ;
- 180 176 150 154 198 220 250 220 ;
- 176 150 154 198 220 250 220 180 ;
- 150 154 198 220 250 220 180 140 ;
- 154 198 220 250 220 180 140 125 ;
- 198 220 250 220 180 140 125 122];
- T=[295 310 326 332 361 347 305 287 296 311 287 256 229 184 176 130 157 234 ...
- 250 267 253 306 347 290 336 229 263 230 257 211 193 201 236 266 347 206 211 217 245 230 219 183 156 130 129 ...
- 305 317 344 320 331 357 310 298 287 362 327 258 235 241 205 195 203 362 266 256 221 148 184 130 107 186 177 ...
- 255 277 237 314 351 287 362 327 258 235 241 205 195 203 201 213 217 235 230 221 153 122 130 ...
- 337 324 320 311 340 325 333 312 289 267 259 262 180 165 125 127 108 115 ...
- 140 180 202 208 175 189 192 206 201 200 202 211 200 197 180 176 150 154 198 220 250 220 180 140 125 122 121];
- % 归一化以上两个矩阵,车辆范围150~400
- t1=length(P)
- t2=length(T)
- min=100;max=370;
- for i=1:t1
- for j=1:8
- P(i,j)=(P(i,j)-min)/(max-min);
- end
- T(i)=(T(i)-min)/(max-min);
- end
- S1=17;%13;%隐层节点个数
- S2=2;
- [w1,b1,w2,b2]=initff(P',S1,'tansig',T,'purelin')%初始化网络,最多三层
- %[w1,b1,w2,b2,w3,b3]=initff(P,S1,'tansig',S2,'purelin');
- % k=pickic;
- % if k==2
- % % w1=[0.5641;0.8164];
- % % b1=[-0.3781;0.3062];
- % % w2=[0.3313 0.9980];
- % % b2=[-0.1772];
- % %--------------------------------------------------------------------------
- % %---------------------------------------------------100
- % w1=[2.4063 2.7415 1.4561 -2.5735 4.0384 2.3961 -1.8559 0.4239;
- % -2.7761 -1.3457 0.9658 0.0149 -2.0444 -3.4898 -2.3073 -2.7993;
- % 3.2467 1.6495 4.6956 1.0841 -3.2989 -0.7979 -1.2666 -0.9117;
- % 1.3622 4.2306 0.9504 -3.0748 -2.9399 -1.7217 1.5410 -1.2017;
- % 0.0188 -1.9732 1.7077 -1.7858 1.6021 -3.9084 -3.3716 -1.9279;
- % -1.2426 -3.4794 2.5151 3.7008 3.7426 -1.4297 -0.9531 -1.2012;
- % 0.0401 2.2170 -4.3445 -2.6141 -1.9640 -0.4439 -2.4358 3.4639;
- % -2.2584 3.1693 -3.9980 -2.6921 -2.6064 0.4021 0.9890 -1.5112;
- % -3.0588 2.2151 0.1952 -2.4010 -2.5893 1.3482 1.5322 -3.3741;
- % -2.6333 -2.3508 2.2585 1.3113 -2.7351 -1.5705 3.5988 1.7061;
- % -2.3524 3.1016 2.1774 1.1169 -3.2643 0.0554 1.9463 -3.0639;
- % -1.2864 1.2364 -4.2832 -2.6603 -2.8947 -0.5233 2.6459 3.1057;
- % 0.1316 1.8756 2.2655 4.9274 0.3631 0.3435 3.4166 -2.8535;
- % -0.9200 1.9676 2.9861 3.0741 -2.7440 1.4456 4.4996 0.1083;
- % 1.4444 0.1330 -1.6620 -5.7574 0.6894 -1.2357 -2.2234 -3.6448;
- % -3.4055 1.9742 1.7287 -0.7171 -2.9113 2.4279 -0.3615 3.1177;
- % 1.5182 -0.9803 0.9349 -0.9522 1.4335 5.3663 3.1944 -0.4715];
- %
- % b1=[-5.5205;9.0924;-2.4769;0.6689;6.7549;-2.8945;3.7084;5.9825;4.0662;1.1158;0.4256;1.6425;-7.0904;-5.1974;6.3409;-1.5962;-6.4703];
- % w2=[0.0656 0.0134 -0.0514 0.0029 -0.0230 -0.1441 0.1241 -0.1129 0.0399 -0.2237 0.0039 -0.2737 -0.2446 0.4762 -0.3628 0.1147 -0.0909];
- % b2=-0.1783;
- % %--------------------------------------------------------------------------
- % end
- % df=10;
- % me=1000;%800;
- % eg=0.0001;%0.00005
- % lr=0.02;
- % tp=[df me eg lr];
- % [w1,b1,w2,b2,te,tr]=trainlm(w1,b1,'tansig',w2,b2,'purelin',P',T,tp);
- % [w1,b1,w2,b2,w3,b3,ep,tr]=trainbp(w1,b1,'tansig',w2,b2,'tansig',w3,b3,'purelin',P,T,tp);
- disp_fqre=10;max_epoch=100;err_goal=0.0005;spread=1.0;
- TP=[disp_fqre max_epoch err_goal spread];
- [w1,b1,w2,b2,nr,err]=solverb(P',T,TP);
- w1;
- b1;
- w2;
- b2;
- nr
- y=[w1(1,:) b1(1) w1(2,:) b1(2) w1(3,:) b1(3) w1(4,:) b1(4) w1(5,:) b1(5) w1(6,:) b1(6) w1(7,:) b1(7) w1(8,:) b1(8) ...
- w1(9,:) b1(9) w1(10,:) b1(10) w1(11,:) b1(11) w1(12,:) b1(12) w1(13,:) b1(13) w1(14,:) b1(14) w1(15,:) b1(15) w1(16,:) b1(16) w1(17,:) b1(17) w2 b2];
- P=[236; 266 ;347 ;206 ;211 ;217 ;245;230];%[295; 310; 326; 332; 361; 347 ;305;287];
- T=296;
- for j=1:8
- P(j)=(P(j)-min)/(max-min);
- end
- a1=radbas(dist(w1,P),b1)
- a2=purelin(w2*a1,b2)
- %----------输出---------------------------
- y=a2*(max-min)+min
复制代码
- function y=bp_net1(x)
- p=-1:0.1:1;
- t=[-0.96 -0.577 -0.0729 0.377 0.641 0.66 0.461 0.1336 -0.201 -0.434 -0.5 -0.393 -0.1647 0.0988 0.3072 0.396 0.3449 0.1816 -0.0312 -0.2183 -0.3201];
- [R,Q]=size(p);
- [S2,Q]=size(t);
- S1=5;
- [w1,b1]=rands(S1,R);
- [w2,b2]=rands(S2,S1);
- A2=purelin(w2*tansig(w1*p,b1),b2)
- disp_fqre=10;max_epoch=18000;err_goal=1.0;lr=0.5;
- TP=[disp_fqre max_epoch err_goal lr];
- [w1,b1,w2,b2,epochs,errors]=trainbp(w1,b1,'tansig',w2,b2,'purelin',p,t,TP)
复制代码
[ 本帖最后由 风花雪月 于 2006-10-25 06:16 编辑 ] |
|