# 基于遗传算法的BP神经网络
**介绍**:利用遗传算法并行地优化BP网络的权值和阈值,从而避免了BP网络在优化权值和阈值时陷入局部最优的缺点。
**背景**:此项目的背景为客运量和货运量的预测。
**文件介绍**
1. `freightFlow.xlsx ` : 货运量数据集,前7列为影响货运量的因素,第8列为货运量;
2. `passengerFlow.xlsx` : 客运量数据集,前7列为影响货运量的因素,第8列为客运量;
3. `Data.mat`:这是一个结构体,成员P为从客运量数据集,成员F为货运量数据集;
4. 其他为源文件。
## 函数概述
1. `mainFun()`:主函数,完成训练和预测;
1. `normInit()`:数据获取,存入结构体Data.mat;
1. `gadecod()`:对输入的染色体编码,编码方式一般有两种,实数编码和二进制编码(此项目中对应的为实数编码,所以编码后的值即为解码后的值);
1. `getBPinfo()`:获取BP网络的基本信息;
1. `gabpEval()`:计算适应度。
## GAOT使用说明
因为项目中用到了GAOT工具包中的函数,所以需要将GAOT工具包加入路径。
操作步骤为:
1. 点击GAOT文件;
1. 添加到路径;
1. 选定文件夹和子文件夹。
这样,工程中就可以调用GAOT工具包中的函数了。
## 初始种群的生成
```matlab
[pop]=initializega(num,bounds,eevalFN,eevalOps,options)
```
- 【输出参数】
> pop:生成的初始种群
- 【输入参数】
> num:种群中的个体数目
> bounds:代表变量的上下界的矩阵
> eevalFN:适应度函数
> eevalOps:传递给适应度函数的参数
> options:选择编码形式(浮点编码或是二进制编码)[precision F_or_B]
> precision:变量进行二进制编码时指定的精度
> F_or_B:为1时选择浮点编码,否则为二进制编码,由precision指定精度)
## 遗传算法函数
````matlab
[x,endPop,bPop,traceInfo]=ga(bounds,evalFN,evalOps,startPop,opts,termFN,termOps,selectFN,selectOps,xOverFNs,xOverOps,mutFNs,mutOps)
【输出参数】
x--求得的最优解
endPop--最终得到的种群
bPop--最优种群的一个搜索轨迹
traceInfo--每一代的最好的适应度和平均适应度
【输入参数】
bounds--代表变量上下界的矩阵
evalFN--适应度函数
evalOps--传递给适应度函数的参数
startPop--初始种群
opts[epsilonprob_opsdisplay]--opts(1:2)等同于initializega的options参数,第三个参数控制是否输出,一般为0。如[1e-610]
termFN--终止函数的名称,如['maxGenTerm']
termOps--传递个终止函数的参数,如[100]
selectFN--选择函数的名称,如['normGeomSelect']
selectOps--传递个选择函数的参数,如[0.08]
xOverFNs--交叉函数名称表,以空格分开,如['arithXoverheuristicXoversimpleXover']
xOverOps--传递给交叉函数的参数表,如[20;23;20]
mutFNs--变异函数表,如['boundaryMutationmultiNonUnifMutationnonUnifMutationunifMutation']
mutOps--传递给交叉函数的参数表,如[400;61003;41003;400]
````
没有合适的资源?快使用搜索试试~ 我知道了~
基于遗传算法的BP网络设计,应用背景为交通流量的预测.zip
共67个文件
m:60个
xlsx:2个
md:2个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 136 浏览量
2023-07-23
10:16:47
上传
评论
收藏 81KB ZIP 举报
温馨提示
基于遗传算法的BP网络设计,应用背景为交通流量的预测.zip
资源推荐
资源详情
资源评论
收起资源包目录
基于遗传算法的BP网络设计,应用背景为交通流量的预测.zip (67个子文件)
新建文件夹
GA-BP-master
src
dataInit.m 154B
GAOT
normGeomSelect.m 2KB
boundaryMutation.m 2KB
nonUnifMutation.m 2KB
calcbits.m 1KB
inversionMutation.m 2KB
gademo2.m 3KB
binaryMutation.m 1KB
enhancederXover.m 2KB
shiftMutation.m 2KB
_ReadMe.txt 1KB
gaZBGradEval.m 684B
tspEval.m 157B
EER.m 2KB
f2b.m 1KB
simpleXover.m 2KB
initializega.m 3KB
coranaFeval.m 2KB
b2f.m 1KB
startup.m 49B
delta.m 1KB
linerorderXover.m 2KB
tournSelect.m 2KB
gademo1eval1.m 1KB
adjswapMutation.m 1KB
binaryExample.m 2KB
singleptXover.m 2KB
parse.m 1KB
initializeoga.m 2KB
uniformXover.m 2KB
threeswapMutation.m 1KB
ga.m 11KB
coranaMin.m 1KB
_Genetic Algorithm Optimization Toolbox.mht 5KB
cyclicXover.m 2KB
partmapXover.m 2KB
erXover.m 2KB
orderBasedExample.m 3KB
heuristicXover.m 2KB
orderbasedXover.m 2KB
plotCorana.m 514B
arithXover.m 1KB
multiNonUnifMutation.m 2KB
maxGenTerm.m 1KB
unifMutation.m 2KB
floatGradExample.m 2KB
gaMichEval.m 193B
coranaEval.m 1KB
gaZBGrad.m 174B
gademo.m 4KB
gademo3.m 6KB
README.md 1KB
floatExample.m 2KB
gademo1.m 4KB
roulette.m 861B
dists.m 7KB
swapMutation.m 2KB
optMaxGenTerm.m 2KB
Contents.m 5KB
mainFun.m 3KB
freightFlow.xlsx 8KB
getBPinfo.m 955B
passengerFlow.xlsx 8KB
gabpEval.m 408B
Data.mat 619B
gadecod.m 2KB
README.md 3KB
共 67 条
- 1
资源评论
AbelZ_01
- 粉丝: 919
- 资源: 5441
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功