QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 10421|回复: 15
打印 上一主题 下一主题

在MATLAB中如何将神经网络和遗传算法联系起来

[复制链接]
字体大小: 正常 放大
trok_2005        

3

主题

2

听众

61

积分

升级  58.95%

该用户从未签到

新人进步奖

跳转到指定楼层
1#
发表于 2005-1-22 22:42 |只看该作者 |正序浏览
|招呼Ta 关注Ta

我因科研需要刚开始接触MATLAB,发现确实如各位大侠所说是个好东西,目前我在处理一组实验数据,希望用神经网络对其进行训练,可以实现仿真,另外我还希望采用遗传算法寻优,如何将神经网络的输出转化成遗传算法需要适应度函数呢?请各位大侠多多指点,先这里谢过了。

zan
转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
347196468 实名认证       

0

主题

2

听众

116

积分

升级  8%

  • TA的每日心情
    开心
    2013-12-9 16:22
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    自我介绍
    学习认真勤奋

    群组2013全国研究生数学建

    %获得网络的输入样本P和目标样本T8 ~& w) C( K; Q/ g) e2 A' }
    5 f8 v0 ]0 b1 w& C: x& x  ]  L6 xP=[1 0.6 0.1 0 0 0 0   1 0.5 0 0 0 0 0;4 K3 v* b+ @: I" G2 C& ?2 S& z
    - S- M- D5 a; {* ^  B9 ~1 0.6 0.1 0 0 0 0   0 0.5 1 0.4 0 0 0;9 |( R: l2 i; {7 p. o2 J% m6 D) h0 X: k1 I& ^0 r
    1 0.6 0.1 0 0 0 0   0 0 0 0.4 1 0.6 0;
    . U, H. g1 w0 L3 {( T& k# b) A, ^* Z% o  j1 0.6 0.1 0 0 0 0   0 0 0 0 0 0 0.8;) W( b  h! d6 V3 J9 O& b
    * d0 F8 F  p( p) x0 0.6 0.6 0 0 0 0   1 0.5 0 0 0 0 0;; G6 ?) Q# P: @. f4 i& c8 q1 `% C" `5 u/ X  r* E. y8 |3 T
    0 0.6 0.6 0 0 0 0   0 0.5 1 0.4 0 0 0;$ N  F( j  A$ |- d1 k$ G/ K+ k" Y; Q
    3 @0 b6 z' y* T# p- f$ _0 E0 0.6 0.6 0 0 0 0   0 0 0 0.4 1 0.6 0;
    ' Z9 b5 ^5 z! w, f! I1 l6 Q* |! h# _4 H2 z2 U6 _0 0.6 0.6 0 0 0 0   0 0 0 0 0 0 0.8;% V, f5 |% e2 r3 ^& D
      Z( U' n9 E0 n: h* ?6 U/ n3 s0 0 0.6 1 0 0 0    1 0.5 0 0 0 0 0;
    8 {; j$ _3 S1 Y* p/ {# h1 C+ s/ }$ }2 u' J' O& Y0 0 0.6 1 0 0 0    0 0.5 1 0.4 0 0 0;+ k" V+ T5 y7 D
    # V' y- F! J/ [, B* f0 0 0.6 1 0 0 0    0 0 0 0.4 1 0.6 0;" h( s# ?% u' g$ h* X) L/ G. f2 U$ |0 H- K
    0 0 0.6 1 0 0 0    0 0 0 0 0 0 0.8;
    5 u9 v* s+ Q% l% q' |$ h- _7 x- i' b" f* G5 P- G0 0 0 0 1 0.6 0    1 0.5 0 0 0 0 0;! p$ q8 S1 V+ @9 t7 i. o+ c0 z5 O) O: _3 D, B+ [
    0 0 0 0 1 0.6 0    0 0.5 1 0.4 0 0 0;5 e* _9 w. i: p' ]; U. H+ K# f
    8 v  y; M: u) h8 R1 U0 0 0 0 1 0.6 0    0 0 0 0.4 1 0.6 0;  ^9 S7 i) L" N1 r+ {0 g& I
    3 e0 O& K4 G; M- ~! `- a# a0 0 0 0 1 0.6 0    0 0 0 0 0 0 0.8]';/ Q' c' j* D1 Y9 w. a5 [( w  X* g- L  D. X, K
    T=[1 0.5 0 0 0 0 0 0;+ F, _7 y% q  B" Z
    ( v7 k% _$ A  n" x& r& Z0 0 0 0.2 0.6 1 0.6 0.2;
      d: h  j) f7 I2 @' M5 N0 I, R/ x! D0 |1 g0 0 0 0.2 0.6 1 0.6 0.2;2 F- g1 H, Q6 j1 {  Y. |5 |9 L2 v/ N3 x& X! r
    0 0 0 0.2 0.6 1 0.6 0.2;+ C6 v0 ~# d7 e- J! B
    % D6 e/ B1 ^( h6 V) |0.4 0.8 1 0.8 0.4 0.2 0 0;
    ; Z& A8 t4 p! ~+ I& z  h1 k7 Z/ Y! w( R  I* }0 0 0 0.2 0.6 1 0.6 0.2;/ y8 U  A! f( O( H( m+ I) d& U9 `, Q/ v( W, z
    0 0 0 0 0 0.2 0.5 0.8;+ n8 n% a# A' W! h
    ) a8 J+ Z, ~8 {1 q3 Y! `( g0 0 0 0.2 0.6 1 0.6 0.2;6 K/ }. X  h: D3 k, W7 r
    2 P- E1 M8 K8 Y) ?/ M- m0 0 0 0.2 0.6 1 0.6 0.2;( K1 W& p9 b7 r6 a7 [; a) J5 Z$ V, O4 x
    0 0 0 0.2 0.6 1 0.6 0.2;: `: C) E. l2 q' j5 k5 z7 Q6 ]
    4 m6 e3 Y* J! u( n. u3 U0 0 0 0 0 0.2 0.5 0.8;
    1 z2 i% H& k, X; c5 k. e2 {, q! g& u! D* o) @! t( l4 Z0 0 0 0 0 0.2 0.5 0.8;5 }/ y1 N  S, m# m, Z
    # P, r/ k- a/ r* |9 `; S7 Z0 0 0 0.2 0.6 1 0.6 0.2;, Q& Q; h+ \' @+ D9 W, _6 t
    / r/ Q9 g6 X# _9 h0 0 0 0.2 0.6 1 0.6 0.2;% a& I% x. Y* b! S3 Z" e/ i5 t5 v3 l3 |
    0 0 0 0 0 0.2 0.5 0.8;- @. I. A1 q9 X
    ; M+ J5 J' ?6 ?* Z0 k: e# x0 0 0 0 0 0.2 0.5 0.8]';
    5 R4 A( s% ?" W2 A0 _: T( x0 l- }8 I4 t* e%根据Kolmogorov定理,输入层有14个节点,所以中间层有29个节点$ f5 v3 N( Z/ H( a( J  t* Z8 w* N  k, m
    %中间层神经元的传递函数为'tansig'
    7 W5 ]! M6 Z& c2 f6 I5 J1 V4 F  _$ S% C' Z& c% }) G# y/ ~%输出层有8个节点,其神经元传递函数为logsig* E6 z' J* v  ^& c$ `. N- C
    , \; `2 P* v% b( k0 h- u7 H6 H) `%训练函数采用traingdx
    . Z5 d3 _- l4 Y# M! f5 ~3 `7 o0 C& m3 c0 \* Nnet=newff(minmax(P),[29,8],{'tansig','logsig'},'traingdx');- ?/ b# _# j0 f* p8 n" w/ h" V
    # x/ r5 ^, S7 H+ k- b& a2 T%训练步数为1000次" ?8 _& L' `% A% T; |1 ?6 e
    : w4 P$ ], K, ~) m7 ?5 }%训练目标误差为0.001
    ( z  O! u1 \6 R; U0 W( D  ]! [) p+ D+ cnet.trainParam.epochs=1000;* |  r9 y5 [5 H2 N5 i+ Q6 @/ c5 u9 |2 [$ G" _. a
    net.trainParam.goal=0.001;
    + _8 w: i& Y6 x2 s% ~$ Y- d; H% t7 b: r8 W, G9 O+ i5 {* Lnet=train(net,P,T);; \7 P2 W, `. E+ h, o/ B# I1 l) M
    4 Y  J8 r0 i/ k4 ?- S6 T- LY=sim(net,P);
    " z  @8 Q$ M, {6 y- r: ]' a& `$ b' K& z& a%求训练值在每一个点上的误差: \5 F' N/ k7 o% n1 |, r8 M" q7 E! Z8 d& j; L
    for i=1:16* ]5 h$ `  Y8 D2 J! z
    8 B* m8 \- W: _! N/ j    x(i)=norm(Y(:,i));3 d) a/ c- r- X! S) k
    5 o( Z9 A; [  n* ^* P% e
    回复

    使用道具 举报

    jluzhking 实名认证       

    1

    主题

    4

    听众

    529

    积分

    升级  76.33%

    该用户从未签到

    回复

    使用道具 举报

    lyaya2004        

    0

    主题

    3

    听众

    15

    积分

    升级  10.53%

    该用户从未签到

    新人进步奖

    回复

    使用道具 举报

    raosu        

    11

    主题

    3

    听众

    1338

    积分

  • TA的每日心情
    慵懒
    2013-5-8 19:57
  • 签到天数: 3 天

    [LV.2]偶尔看看I

    新人进步奖 元老勋章

    群组数学建模

    群组中国矿业大学数学建模协会

    群组数学趣味、游戏、IQ等

    群组南京邮电大学数模协会

    群组我行我数

    回复

    使用道具 举报

    0

    主题

    4

    听众

    38

    积分

    升级  34.74%

    该用户从未签到

    新人进步奖

    回复

    使用道具 举报

    王捷浩 实名认证       

    18

    主题

    9

    听众

    845

    积分

    升级  61.25%

  • TA的每日心情
    开心
    2013-2-22 12:57
  • 签到天数: 1 天

    [LV.1]初来乍到

    新人进步奖

    群组中国矿业大学数学建模协会

    群组数学趣味、游戏、IQ等

    群组数学模型

    群组我行我数

    回复

    使用道具 举报

    0

    主题

    4

    听众

    5

    积分

    升级  0%

    该用户从未签到

    国际赛参赛者

    新人进步奖

    回复

    使用道具 举报

    dsh1001        

    0

    主题

    1

    听众

    2

    积分

    升级  40%

    该用户从未签到

    我也是你这种问题,就是通过实验获得数据,然后建立模型进行训练、仿真和预测,这些都可以
    9 M' ?$ e. F- L; y. b- a; G' e- W就是最后如何实现参数的优化,就是给定了输出如何确定最优的输入
    7 g, X5 N7 g, m. \# g好像是用模拟退火算法之类的可以实现,目前还没有解决,期待你解决以后多交流
    回复

    使用道具 举报

    lzh0601        

    2

    主题

    3

    听众

    89

    积分

    升级  88.42%

    该用户从未签到

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-8-4 07:52 , Processed in 0.493657 second(s), 111 queries .

    回顶部