⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 bp.m

📁 在matlab的条件下
💻 M
字号:
clear
echo on
clc
%BP建模,网络仿真求安全系数,进行可靠度分析
%原始数据归一化 c,phi,fos
m_data=[
20.000 	7.200 	0.850 	;
20.000 	7.641 	0.867 	;
20.000 	8.082 	0.885 	;
20.000 	8.522 	0.902 	;
20.000 	8.963 	0.920 	;
20.000 	9.404 	0.937 	;
20.000 	9.845 	0.955 	;
20.000 	10.286 	0.971 	;
20.000 	10.727 	0.988 	;
20.000 	11.167 	1.006 	;
20.000 	11.608 	1.023 	;
20.000 	12.049 	1.041 	;
20.000 	12.490 	1.058 	;
20.000 	12.931 	1.070 	;
20.000 	13.371 	1.088 	;
20.000 	13.812 	1.106 	;
20.000 	14.253 	1.123 	;
20.000 	14.694 	1.141 	;
20.000 	15.135 	1.158 	;
20.000 	15.576 	1.176 	;
20.000 	16.016 	1.194 	;
20.000 	16.457 	1.206 	;
20.000 	16.898 	1.224 	;
20.000 	17.339 	1.241 	;
20.000 	17.780 	1.259 	;
20.000 	18.000 	1.262 	;
20.000 	18.220 	1.276 	;
20.000 	18.661 	1.294 	;
20.000 	19.102 	1.312 	;
20.000 	19.543 	1.329 	;
20.000 	19.984 	1.342 	;
20.000 	20.425 	1.360 	;
20.000 	20.865 	1.378 	;
20.000 	21.306 	1.395 	;
20.000 	21.747 	1.413 	;
20.000 	22.188 	1.431 	;
20.000 	22.629 	1.448 	;
20.000 	23.069 	1.460 	;
20.000 	23.510 	1.478 	;
20.000 	23.951 	1.496 	;
20.000 	24.392 	1.513 	;
20.000 	24.833 	1.531 	;
20.000 	25.274 	1.549 	;
20.000 	25.714 	1.566 	;
20.000 	26.155 	1.584 	;
20.000 	26.596 	1.597 	;
20.000 	27.037 	1.615 	;
20.000 	27.478 	1.633 	;
20.000 	27.918 	1.650 	;
20.000 	28.359 	1.668 	;
20.000 	28.800 	1.686 	;
19.000 	7.200 	0.818 	;
19.000 	7.641 	0.836 	;
19.000 	8.082 	0.853 	;
19.000 	8.522 	0.870 	;
19.000 	8.963 	0.888 	;
19.000 	9.404 	0.906 	;
19.000 	9.845 	0.923 	;
19.000 	10.286 	0.941 	;
19.000 	10.727 	0.957 	;
19.000 	11.167 	0.974 	;
19.000 	11.608 	0.992 	;
19.000 	12.049 	1.009 	;
19.000 	12.490 	1.027 	;
19.000 	12.931 	1.040 	;
19.000 	13.371 	1.058 	;
19.000 	13.812 	1.075 	;
19.000 	14.253 	1.093 	;
19.000 	14.694 	1.110 	;
19.000 	15.135 	1.128 	;
19.000 	15.576 	1.140 	;
19.000 	16.016 	1.158 	;
19.000 	16.457 	1.176 	;
19.000 	16.898 	1.194 	;
19.000 	17.339 	1.211 	;
19.000 	17.780 	1.229 	;
19.000 	18.000 	1.231 	;
19.000 	18.220 	1.246 	;
19.000 	18.661 	1.264 	;
19.000 	19.102 	1.282 	;
19.000 	19.543 	1.294 	;
19.000 	19.984 	1.312 	;
19.000 	20.425 	1.330 	;
19.000 	20.865 	1.347 	;
19.000 	21.306 	1.365 	;
19.000 	21.747 	1.383 	;
19.000 	22.188 	1.401 	;
19.000 	22.629 	1.412 	;
19.000 	23.069 	1.431 	;
19.000 	23.510 	1.448 	;
19.000 	23.951 	1.466 	;
19.000 	24.392 	1.483 	;
19.000 	24.833 	1.501 	;
19.000 	25.274 	1.519 	;
19.000 	25.714 	1.536 	;
19.000 	26.155 	1.549 	;
19.000 	26.596 	1.567 	;
19.000 	27.037 	1.585 	;
19.000 	27.478 	1.603 	;
19.000 	27.918 	1.620 	;
19.000 	28.359 	1.638 	;
19.000 	28.800 	1.656 	;
18.000 	7.200 	0.787 	;
18.000 	7.641 	0.805 	;
18.000 	8.082 	0.822 	;
18.000 	8.522 	0.840 	;
18.000 	8.963 	0.857 	;
18.000 	9.404 	0.875 	;
18.000 	9.845 	0.892 	;
18.000 	10.286 	0.909 	;
18.000 	10.727 	0.926 	;
18.000 	11.167 	0.944 	;
18.000 	11.608 	0.961 	;
18.000 	12.049 	0.979 	;
18.000 	12.490 	0.997 	;
18.000 	12.931 	1.009 	;
18.000 	13.371 	1.027 	;
18.000 	13.812 	1.045 	;
18.000 	14.253 	1.062 	;
18.000 	14.694 	1.080 	;
18.000 	15.135 	1.097 	;
18.000 	15.576 	1.110 	;
18.000 	16.016 	1.128 	;
18.000 	16.457 	1.146 	;
18.000 	16.898 	1.163 	;
18.000 	17.339 	1.181 	;
18.000 	17.780 	1.198 	;
18.000 	18.000 	1.203 	;
18.000 	18.220 	1.216 	;
18.000 	18.661 	1.234 	;
18.000 	19.102 	1.247 	;
18.000 	19.543 	1.264 	;
18.000 	19.984 	1.282 	;
18.000 	20.425 	1.300 	;
18.000 	20.865 	1.318 	;
18.000 	21.306 	1.335 	;
18.000 	21.747 	1.353 	;
18.000 	22.188 	1.365 	;
18.000 	22.629 	1.383 	;
18.000 	23.069 	1.401 	;
18.000 	23.510 	1.418 	;
18.000 	23.951 	1.436 	;
18.000 	24.392 	1.454 	;
18.000 	24.833 	1.471 	;
18.000 	25.274 	1.489 	;
18.000 	25.714 	1.502 	;
18.000 	26.155 	1.520 	;
18.000 	26.596 	1.538 	;
18.000 	27.037 	1.555 	;
18.000 	27.478 	1.573 	;
18.000 	27.918 	1.591 	;
18.000 	28.359 	1.609 	;
18.000 	28.800 	1.621 	;
21.000 	7.200 	0.884 	;
21.000 	7.641 	0.902 	;
21.000 	8.082 	0.919 	;
21.000 	8.522 	0.937 	;
21.000 	8.963 	0.954 	;
21.000 	9.404 	0.972 	;
21.000 	9.845 	0.989 	;
21.000 	10.286 	1.005 	;
21.000 	10.727 	1.018 	;
21.000 	11.167 	1.036 	;
21.000 	11.608 	1.053 	;
21.000 	12.049 	1.070 	;
21.000 	12.490 	1.088 	;
21.000 	12.931 	1.105 	;
21.000 	13.371 	1.123 	;
21.000 	13.812 	1.136 	;
21.000 	14.253 	1.153 	;
21.000 	14.694 	1.171 	;
21.000 	15.135 	1.188 	;
21.000 	15.576 	1.206 	;
21.000 	16.016 	1.224 	;
21.000 	16.457 	1.241 	;
21.000 	16.898 	1.259 	;
21.000 	17.339 	1.271 	;
21.000 	17.780 	1.289 	;
21.000 	18.000 	1.294 	;
21.000 	18.220 	1.307 	;
21.000 	18.661 	1.324 	;
21.000 	19.102 	1.342 	;
21.000 	19.543 	1.360 	;
21.000 	19.984 	1.377 	;
21.000 	20.425 	1.390 	;
21.000 	20.865 	1.408 	;
21.000 	21.306 	1.425 	;
21.000 	21.747 	1.443 	;
21.000 	22.188 	1.461 	;
21.000 	22.629 	1.478 	;
21.000 	23.069 	1.496 	;
21.000 	23.510 	1.508 	;
21.000 	23.951 	1.526 	;
21.000 	24.392 	1.544 	;
21.000 	24.833 	1.562 	;
21.000 	25.274 	1.579 	;
21.000 	25.714 	1.597 	;
21.000 	26.155 	1.615 	;
21.000 	26.596 	1.632 	;
21.000 	27.037 	1.645 	;
21.000 	27.478 	1.663 	;
21.000 	27.918 	1.681 	;
21.000 	28.359 	1.698 	;
21.000 	28.800 	1.716 	;
22.000 	7.200 	0.917 	;
22.000 	7.641 	0.934 	;
22.000 	8.082 	0.952 	;
22.000 	8.522 	0.969 	;
22.000 	8.963 	0.987 	;
22.000 	9.404 	1.004 	;
22.000 	9.845 	1.017 	;
22.000 	10.286 	1.034 	;
22.000 	10.727 	1.050 	;
22.000 	11.167 	1.068 	;
22.000 	11.608 	1.085 	;
22.000 	12.049 	1.102 	;
22.000 	12.490 	1.120 	;
22.000 	12.931 	1.137 	;
22.000 	13.371 	1.155 	;
22.000 	13.812 	1.172 	;
22.000 	14.253 	1.185 	;
22.000 	14.694 	1.203 	;
22.000 	15.135 	1.220 	;
22.000 	15.576 	1.238 	;
22.000 	16.016 	1.255 	;
22.000 	16.457 	1.273 	;
22.000 	16.898 	1.290 	;
22.000 	17.339 	1.303 	;
22.000 	17.780 	1.321 	;
22.000 	18.000 	1.325 	;
22.000 	18.220 	1.338 	;
22.000 	18.661 	1.356 	;
22.000 	19.102 	1.374 	;
22.000 	19.543 	1.391 	;
22.000 	19.984 	1.409 	;
22.000 	20.425 	1.421 	;
22.000 	20.865 	1.439 	;
22.000 	21.306 	1.457 	;
22.000 	21.747 	1.475 	;
22.000 	22.188 	1.492 	;
22.000 	22.629 	1.510 	;
22.000 	23.069 	1.528 	;
22.000 	23.510 	1.540 	;
22.000 	23.951 	1.558 	;
22.000 	24.392 	1.575 	;
22.000 	24.833 	1.593 	;
22.000 	25.274 	1.611 	;
22.000 	25.714 	1.628 	;
22.000 	26.155 	1.646 	;
22.000 	26.596 	1.664 	;
22.000 	27.037 	1.676 	;
22.000 	27.478 	1.694 	;
22.000 	27.918 	1.712 	;
22.000 	28.359 	1.730 	;
22.000 	28.800 	1.747 	;
25.000 	7.200 	1.014 	;
25.000 	7.641 	1.032 	;
25.000 	8.082 	1.049 	;
25.000 	8.522 	1.067 	;
25.000 	8.963 	1.084 	;
25.000 	9.404 	1.102 	;
25.000 	9.845 	1.119 	;
25.000 	10.286 	1.135 	;
25.000 	10.727 	1.152 	;
25.000 	11.167 	1.170 	;
25.000 	11.608 	1.183 	;
25.000 	12.049 	1.200 	;
25.000 	12.490 	1.217 	;
25.000 	12.931 	1.235 	;
25.000 	13.371 	1.253 	;
25.000 	13.812 	1.270 	;
25.000 	14.253 	1.288 	;
25.000 	14.694 	1.300 	;
25.000 	15.135 	1.318 	;
25.000 	15.576 	1.335 	;
25.000 	16.016 	1.353 	;
25.000 	16.457 	1.370 	;
25.000 	16.898 	1.388 	;
25.000 	17.339 	1.405 	;
25.000 	17.780 	1.418 	;
25.000 	18.000 	1.427 	;
25.000 	18.220 	1.436 	;
25.000 	18.661 	1.453 	;
25.000 	19.102 	1.471 	;
25.000 	19.543 	1.488 	;
25.000 	19.984 	1.506 	;
25.000 	20.425 	1.524 	;
25.000 	20.865 	1.536 	;
25.000 	21.306 	1.554 	;
25.000 	21.747 	1.572 	;
25.000 	22.188 	1.590 	;
25.000 	22.629 	1.607 	;
25.000 	23.069 	1.625 	;
25.000 	23.510 	1.643 	;
25.000 	23.951 	1.655 	;
25.000 	24.392 	1.673 	;
25.000 	24.833 	1.690 	;
25.000 	25.274 	1.708 	;
25.000 	25.714 	1.725 	;
25.000 	26.155 	1.743 	;
25.000 	26.596 	1.761 	;
25.000 	27.037 	1.778 	;
25.000 	27.478 	1.791 	;
25.000 	27.918 	1.809 	;
25.000 	28.359 	1.827 	;
25.000 	28.800 	1.845 	;
29.000 	7.200 	1.153 	;
29.000 	7.641 	1.170 	;
29.000 	8.082 	1.188 	;
29.000 	8.522 	1.205 	;
29.000 	8.963 	1.222 	;
29.000 	9.404 	1.240 	;
29.000 	9.845 	1.257 	;
29.000 	10.286 	1.275 	;
29.000 	10.727 	1.291 	;
29.000 	11.167 	1.308 	;
29.000 	11.608 	1.326 	;
29.000 	12.049 	1.338 	;
29.000 	12.490 	1.356 	;
29.000 	12.931 	1.373 	;
29.000 	13.371 	1.391 	;
29.000 	13.812 	1.408 	;
29.000 	14.253 	1.426 	;
29.000 	14.694 	1.443 	;
29.000 	15.135 	1.456 	;
29.000 	15.576 	1.473 	;
29.000 	16.016 	1.491 	;
29.000 	16.457 	1.508 	;
29.000 	16.898 	1.526 	;
29.000 	17.339 	1.543 	;
29.000 	17.780 	1.561 	;
29.000 	18.000 	1.567 	;
29.000 	18.220 	1.578 	;
29.000 	18.661 	1.596 	;
29.000 	19.102 	1.608 	;
29.000 	19.543 	1.626 	;
29.000 	19.984 	1.644 	;
29.000 	20.425 	1.661 	;
29.000 	20.865 	1.679 	;
29.000 	21.306 	1.696 	;
29.000 	21.747 	1.714 	;
29.000 	22.188 	1.726 	;
29.000 	22.629 	1.744 	;
29.000 	23.069 	1.762 	;
29.000 	23.510 	1.780 	;
29.000 	23.951 	1.797 	;
29.000 	24.392 	1.815 	;
29.000 	24.833 	1.832 	;
29.000 	25.274 	1.845 	;
29.000 	25.714 	1.863 	;
29.000 	26.155 	1.880 	;
29.000 	26.596 	1.898 	;
29.000 	27.037 	1.916 	;
29.000 	27.478 	1.933 	;
29.000 	27.918 	1.951 	;
29.000 	28.359 	1.963 	;
29.000 	28.800 	1.981 	;
15.000 	7.200 	0.699 	;
15.000 	7.641 	0.717 	;
15.000 	8.082 	0.734 	;
15.000 	8.522 	0.752 	;
15.000 	8.963 	0.769 	;
15.000 	9.404 	0.787 	;
15.000 	9.845 	0.803 	;
15.000 	10.286 	0.821 	;
15.000 	10.727 	0.839 	;
15.000 	11.167 	0.856 	;
15.000 	11.608 	0.874 	;
15.000 	12.049 	0.886 	;
15.000 	12.490 	0.904 	;
15.000 	12.931 	0.922 	;
15.000 	13.371 	0.939 	;
15.000 	13.812 	0.957 	;
15.000 	14.253 	0.975 	;
15.000 	14.694 	0.987 	;
15.000 	15.135 	1.005 	;
15.000 	15.576 	1.023 	;
15.000 	16.016 	1.041 	;
15.000 	16.457 	1.058 	;
15.000 	16.898 	1.076 	;
15.000 	17.339 	1.094 	;
15.000 	17.780 	1.105 	;
15.000 	18.000 	1.112 	;
15.000 	18.220 	1.123 	;
15.000 	18.661 	1.141 	;
15.000 	19.102 	1.159 	;
15.000 	19.543 	1.176 	;
15.000 	19.984 	1.194 	;
15.000 	20.425 	1.212 	;
15.000 	20.865 	1.224 	;
15.000 	21.306 	1.242 	;
15.000 	21.747 	1.260 	;
15.000 	22.188 	1.278 	;
15.000 	22.629 	1.295 	;
15.000 	23.069 	1.313 	;
15.000 	23.510 	1.331 	;
15.000 	23.951 	1.348 	;
15.000 	24.392 	1.366 	;
15.000 	24.833 	1.378 	;
15.000 	25.274 	1.396 	;
15.000 	25.714 	1.414 	;
15.000 	26.155 	1.432 	;
15.000 	26.596 	1.450 	;
15.000 	27.037 	1.467 	;
15.000 	27.478 	1.485 	;
15.000 	27.918 	1.503 	;
15.000 	28.359 	1.521 	;
15.000 	28.800 	1.532 	;
11.000 	7.200 	0.603 	;
11.000 	7.641 	0.619 	;
11.000 	8.082 	0.636 	;
11.000 	8.522 	0.652 	;
11.000 	8.963 	0.669 	;
11.000 	9.404 	0.686 	;
11.000 	9.845 	0.701 	;
11.000 	10.286 	0.718 	;
11.000 	10.727 	0.730 	;
11.000 	11.167 	0.746 	;
11.000 	11.608 	0.763 	;
11.000 	12.049 	0.780 	;
11.000 	12.490 	0.796 	;
11.000 	12.931 	0.808 	;
11.000 	13.371 	0.824 	;
11.000 	13.812 	0.841 	;
11.000 	14.253 	0.858 	;
11.000 	14.694 	0.874 	;
11.000 	15.135 	0.891 	;
11.000 	15.576 	0.902 	;
11.000 	16.016 	0.919 	;
11.000 	16.457 	0.936 	;
11.000 	16.898 	0.952 	;
11.000 	17.339 	0.969 	;
11.000 	17.780 	0.986 	;
11.000 	18.000 	0.987 	;
11.000 	18.220 	1.003 	;
11.000 	18.661 	1.013 	;
11.000 	19.102 	1.030 	;
11.000 	19.543 	1.046 	;
11.000 	19.984 	1.063 	;
11.000 	20.425 	1.080 	;
11.000 	20.865 	1.096 	;
11.000 	21.306 	1.113 	;
11.000 	21.747 	1.123 	;
11.000 	22.188 	1.140 	;
11.000 	22.629 	1.157 	;
11.000 	23.069 	1.174 	;
11.000 	23.510 	1.190 	;
11.000 	23.951 	1.207 	;
11.000 	24.392 	1.224 	;
11.000 	24.833 	1.241 	;
11.000 	25.274 	1.252 	;
11.000 	25.714 	1.269 	;
11.000 	26.155 	1.285 	;
11.000 	26.596 	1.302 	;
11.000 	27.037 	1.319 	;
11.000 	27.478 	1.335 	;
11.000 	27.918 	1.352 	;
11.000 	28.359 	1.366 	;
11.000 	28.800 	1.381 	;
11.367 	18.000 	1.009 	;
11.735 	18.000 	1.019 	;
12.102 	18.000 	1.029 	;
12.469 	18.000 	1.038 	;
12.837 	18.000 	1.048 	;
13.204 	18.000 	1.064 	;
13.571 	18.000 	1.073 	;
13.939 	18.000 	1.083 	;
14.306 	18.000 	1.093 	;
14.674 	18.000 	1.103 	;
15.041 	18.000 	1.113 	;
15.408 	18.000 	1.123 	;
15.776 	18.000 	1.133 	;
16.143 	18.000 	1.148 	;
16.510 	18.000 	1.158 	;
16.878 	18.000 	1.168 	;
17.245 	18.000 	1.179 	;
17.612 	18.000 	1.189 	;
17.980 	18.000 	1.200 	;
18.347 	18.000 	1.210 	;
18.714 	18.000 	1.226 	;
19.082 	18.000 	1.236 	;
19.449 	18.000 	1.247 	;
19.816 	18.000 	1.258 	;
20.184 	18.000 	1.269 	;
20.551 	18.000 	1.280 	;
20.918 	18.000 	1.291 	;
21.286 	18.000 	1.302 	;
21.653 	18.000 	1.313 	;
22.020 	18.000 	1.329 	;
22.388 	18.000 	1.340 	;
22.755 	18.000 	1.352 	;
23.122 	18.000 	1.363 	;
23.490 	18.000 	1.375 	;
23.857 	18.000 	1.386 	;
24.225 	18.000 	1.398 	;
24.592 	18.000 	1.409 	;
24.959 	18.000 	1.421 	;
25.327 	18.000 	1.433 	;
25.694 	18.000 	1.450 	;
26.061 	18.000 	1.462 	;
26.429 	18.000 	1.474 	;
26.796 	18.000 	1.486 	;
27.163 	18.000 	1.498 	;
27.531 	18.000 	1.511 	;
27.898 	18.000 	1.523 	;
28.265 	18.000 	1.536 	;
28.633 	18.000 	1.549 	;
29.000 	18.000 	1.566 	
];
%输入随机变量C,phi,输出安全系数FOS
clc
para1=m_data(:,1:2);
fos1=m_data(:,3);
para=para1';fos=fos1';
[pn,minp,maxp,tn,mint,maxt]=premnmx(para,fos)
%设置网络隐单元的神经元数(5~30验证后5个最好) 
n=10;
%建立相应的BP网络
clc
%把输入变量正交化处理
net=newff(minmax(pn),[2,n,1],{'purelin','tansig','purelin'},'traingdm');
inputWeights=net.IW{1,1};
inputbias=net.b{1};
layerWeights=net.IW{1,1};
layerbias=net.b{2};
clc
% 训练网络
net.trainParam.show=50;
net.trainParam.lr=0.05;
net.trainParam.mc=0.9;
net.trainParam.epochs=20000;
net.trainParam.goal=1e-4;
pause 
clc
%调用TRAINGDM算法训练BP网络
net=train(net,pn,tn);
%对BP网络进行仿真
A=sim(net,pn);
E=A-tn;
M=sse(E)
N=mse(E)
clc
%根据输入的c,phi,用训练好的网络预测安全系数值
p2=[
20.000 	7.200 	 	;
20.000 	7.641 	 	;
20.000 	8.082 	 	;
20.000 	8.522 	 	;
20.000 	8.963 	 	;
20.000 	9.404 	 	;
20.000 	9.845 	 	;
20.000 	10.286 	 	;
20.000 	10.727 	 	;
20.000 	11.167 	 	;
20.000 	11.608 	 	;
20.000 	12.049 	 	;
20.000 	12.490 	 	;
20.000 	12.931 	 	;
20.000 	13.371 	 	;
20.000 	13.812 	 	;
20.000 	14.253 	 	;
20.000 	14.694 	 	;
20.000 	15.135 	 	;
20.000 	15.576 	 	;
20.000 	16.016 	 	;
20.000 	16.457 	 	;
20.000 	16.898 	 	;
20.000 	17.339 	 	;
20.000 	17.780 	 	;
20.000 	18.000 	 	;
20.000 	18.220 	 	;
20.000 	18.661 	 	;
20.000 	19.102 	 	;
20.000 	19.543 	 	;
20.000 	19.984 	 	;
20.000 	20.425 	 	;
20.000 	20.865 	 	;
20.000 	21.306 	 	;
20.000 	21.747 	 	;
20.000 	22.188 	 	;
20.000 	22.629 	 	;
20.000 	23.069 	 	;
20.000 	23.510 	 	;
20.000 	23.951 	 	;
20.000 	24.392 	 	;
20.000 	24.833 	 	;
20.000 	25.274 	 	;
20.000 	25.714 	 	;
20.000 	26.155 	 	;
20.000 	26.596 	 	;
20.000 	27.037 	 	;
20.000 	27.478 	 	;
20.000 	27.918 	 	;
20.000 	28.359 	 	;
20.000 	28.800 	 	
];
p2=p2';
p2n=tramnmx(p2,minp,maxp);
a2n=sim(net,p2n);
a2=postmnmx(a2n,mint,maxt)
echo off
pause

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -