注册 登录
中国神经科学论坛 返回首页

chenghwn的个人空间 https://bbs.bioguider.com/?68 [收藏] [复制] [分享] [RSS]

日志

c#修改的智能软件

已有 1501 次阅读2016-11-17 21:24 |个人分类:智能科学

下面是我用c#修改的智能软件的操作部分。仍然是根据我的理念编程的,运行了一会没有出现错误,至于是否符合我的预想,现在还没有验证。编程的稍显杂乱。主要是在修改时发现错误后,因为方便“就地”进行了修改,没能进行统一规划。也就是说仅是一个草稿,今后还有许多地方需要进行修改,这仅是第一步。这里面最难的是奖惩预期模型的构建,编程相对简单多了,模型一旦构建,在模型基础上的编程有时虽然麻烦一点,但也不会出现多大意外。

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Linq;

using System.Text;

using System.Windows.Forms;

using System.IO;

 

 

namespace WindowsFormsApplication9

{

    public partial class Form1 : Form

    {

        public Form1()

        {

            InitializeComponent();

        }

        int zsk=0;

        int zsk1=0;

        int getdress; //获得地址

        int outdate;  //获得传出数据

        int putdress; //记入地址

        int indate;  //记入数据

        byte[] abydata = new byte[10]; //

        byte[] bydata = new byte[10]; //

        int byda; //

        int inda; //

        FileStream fd;int qlabelrecordnumber;

        FileStream   zzymddx = new FileStream ("d:// zzymddx.txt", FileMode.Create);//1

        FileStream  cjcrm = new FileStream ("d:// cjcr.txt", FileMode.Create);//2

        FileStream  zzydx = new FileStream ("d:// zzydx.txt", FileMode.Create);//3

        FileStream  ztzs = new FileStream ("d:// ztzs.txt", FileMode.Create);//4

        FileStream  xf = new FileStream ("d:// xf.txt", FileMode.Create);//5

        FileStream  xfy = new FileStream ("d:// xfy.txt", FileMode.Create);//6

        FileStream  jcyqqdm = new FileStream ("d:// jcyqqd.txt", FileMode.Create);//7

        FileStream  textfil = new FileStream ("d:// textfil.txt", FileMode.Create);//8

        FileStream  qzzymddx = new FileStream ("d:// qzzymddx.txt", FileMode.Create);//10

        FileStream  qdzs = new FileStream ("d:// qdzs.txt", FileMode.Create);//9

        FileStream  zzydxxz = new FileStream ("d:// zzydxxz.txt", FileMode.Create);//11

        FileStream  jcyq = new FileStream ("d:// jcyq.txt", FileMode.Create);//12

        FileStream  jczs = new FileStream ("d:// jczs.txt", FileMode.Create);//13

        FileStream  pjqdzsqdm = new FileStream ("d:// pjqdzsqd.txt", FileMode.Create);//14

        FileStream  pjcfqdm = new FileStream ("d:// pjcfqd.txt", FileMode.Create);//15

        FileStream  pjcyqqdm = new FileStream ("d:// pjcyqqd.txt", FileMode.Create); //16

        FileStream  ydzs= new FileStream ("d:// ydzs.txt", FileMode.Create);  //17

         void getfun( int getdress, ref int outdate, int fdlabel, FileStream  fd)  //通过地址获得数据

        {  

            fdlabelfun( fdlabel,ref fd);

            outdate=0;

            getdress=(getdress-1)*10+1 ;

            fd.Seek(getdress,SeekOrigin.Begin);

            fd.Read(bydata,0,10);

            for(int k = 0; k <= 9; k++)

            {

                byda=bydata[k];

                if( byda==10) break;

                outdate = outdate + byda * (int)Math.Pow(10,k);

            }

        }

        void putfun( int putdress, int indate, int fdlabel, FileStream  fd) //通过地址记入数据

        {  

            fdlabelfun( fdlabel,ref fd);

            int zhongjie = indate;

            putdress=(putdress-1)*10+1 ;

            int zh=1;

            int k = 0;

            for ( k = 0; k <= 9; k++)

            {

              if ((int)Math.Pow(10, k-1 ) > zhongjie)

                {

                    abydata[k] = 10;

                    zh = abydata[k];

                }

                else

                {

                    inda = indate % 10;

                    abydata[k] = (byte)inda;

                }

            indate=(indate-indate%10)/10;

            if (     zh> 9)

             break ;

            }

 

            fd.Seek(putdress,SeekOrigin.Begin);

            fd.Write(abydata,0,k);

        }

        /*open "d:// zzymddx.txt" for random 1 len = 10; //主注意目的对象

            open "d:// cjcr.txt" for random 2 len = 10; //刺激传入

            open "d:// zzydx.txt" for random 3 len = 10; //主注意对象

            open "d:// ztzs.txt" for random 4 len = 10; //状态中枢

            open "d:// xf.txt" for random 5 len = 10; //兴奋的记忆柱

            open "d:// xfy.txt" for random 6 len = 10; //易兴奋的记忆柱

            open "d:// jcyqqd.txt" for random 7 len = 10; //换成奖惩预期强度中枢

            open "d:// qzzymddx.txt" for random 10 len = 10; //前主注意目的对象

            open "d:// qdzs.txt" for random 9 len = 10; //强度中枢

            open "d:// zzydxxz.txt" for random 11 len = 10; //主注意对象的选择

            open "d:// jcyq.txt" for random 12 len = 10; //奖惩预期(奖惩中枢联络区),运动感觉传出

            open "d:// jczs.txt" for random 13 len = 10; //奖惩中枢

            open "d:// pjqdzsqd.txt" for random 14 len = 10 //平均强度中枢兴奋;

            open "d:// pjcfqd.txt" for random 15 len = 10 //平均奖惩强度;

            open "d:// pjcyqqd.txt" for random 16 len = 10 //平均奖惩预期强度;

            open "d:/ ydzs.txt" for random as 17 len =10 //'运动中枢

            open "d:/ textfil.txt" for random as 8 len =10‘读写文件系统*/

 

 

            //调用的函数

            void fdlabelfun( int fdlabel,ref FileStream  fd)

            {

                switch(fdlabel)

                {// zzymddx cjcr zzydx ztzs xf xfy jcyqqd qzzymddx qdzs zzydxxz jcyq jczs pjqdzsqd pjcfqd pjcyqqd

                    case 1 :

                    fd= zzymddx;

                    break;

                    case 2:

                    fd= cjcrm;

                    break;

                    case 3:

                    fd= zzydx;

                    break;

                    case 4:

                    fd= ztzs;

                    break;

                    case 5:

                    fd= xf;

                    break;

                    case 6:

                    fd= xfy;

                    break;

                    case 7:

                    fd= jcyqqdm;

                    break;

                    case 9:

                    fd= qzzymddx;

                    break;

                    case 10:

                    fd= qdzs;

                    break;

                    case 11:

                    fd= zzydxxz;

                    break;

                    case 12:

                    fd= jcyq;

                    break;

                    case 13:

                    fd= jczs;

                    break;

                    case 14:

                    fd= pjqdzsqdm;

                    break;

                    case 15:

                    fd= pjcfqdm;

                    break;

                    case 16:

                    fd= pjcyqqdm;

                    break;

                    case 8:

                    fd= textfil;

                    break;

                    case 17:

                    fd= ydzs;

                    break;

                }

            }

 

          public void tcjy(int dqjytime, int dqjyvalue, int cqjyvalue)

            {

                if (dqjytime<10*100)

                {

                    //短期记忆10秒内遗忘的较慢。以秒为单位。;

                    dqjyvalue = (dqjyvalue) * 2/3 + (dqjyvalue) / 3 * (1 - (dqjytime) / 10*100);

                }

                if (dqjytime >= 100*10)

                {

                    //10秒外遗忘的较快。;

                    dqjyvalue = 10*100 / dqjytime * dqjyvalue * 2/3;

                }

                if (dqjytime <=24 * 3600*100)

                {

                    //长期记忆遗忘的速度远低于短期记忆10[ 24 * 3600

                    cqjyvalue = cqjyvalue * 3 / 4 + cqjyvalue * (1 - dqjytime / 24 * 3600*100);

                }

                if(dqjytime > 24 * 3600*100)

                //遗忘的较慢。以天为单位。;

                {

                    cqjyvalue = 24 * 3600*100/ dqjytime * cqjyvalue * 5 / 6;

                }

            }

 

 

          int tcxfyz = 2;

 

//可以设置模拟兴奋强度的一群神经通路,以将兴奋强度分为9等。;

//兴奋强度转化为9种强度范围,获得相应传出记录,传出计算。传到相应突触,突触计算。//jyzjcxfqd是基础记忆柱兴奋强度

//根据jyzjcxfqd,tcxfqda,之间的关系,获得记录的qdjlrecordnumber。以通过计算获得传出recordnumber;

/*int[] kongjn = new int[10];

            kongjn[1] = 12121212;

            kongjn[2] = 11221122;

            kongjn[3] = 11222211;

            kongjn[4] = 11112222;

            kongjn[5] = 22221111;

            kongjn[6] = 22111122;

            kongjn[7] = 22112211;

            kongjn[8] = 21212121;

            kongjn[9] = 11111111;

*/

public  void qdzh(ref int tcxfqda, ref int qdjlrecordnumber, ref int jyzjcxfqd)

{

 

    if ((jyzjcxfqd) * 9<tcxfqda)

    {

        qdjlrecordnumber=11111111;

    }

    if (jyzjcxfqd * 8<tcxfqda & tcxfqda< jyzjcxfqd * 9)

    {

        qdjlrecordnumber=21212121;

    }

    if (jyzjcxfqd * 7<tcxfqda & tcxfqda< jyzjcxfqd * 8)

    {

        qdjlrecordnumber=22112211;

 

    }

    if (jyzjcxfqd * 6<tcxfqda & tcxfqda< jyzjcxfqd * 7)

    {

        qdjlrecordnumber=22111122;

    }

    if (jyzjcxfqd * 5<tcxfqda & tcxfqda< jyzjcxfqd * 6)

    {

        qdjlrecordnumber=22221111;

    }

    if (jyzjcxfqd * 4<tcxfqda & tcxfqda< jyzjcxfqd * 5)

    {

        qdjlrecordnumber=11112222;

    }

    if (jyzjcxfqd * 3<tcxfqda & tcxfqda< jyzjcxfqd * 4)

    {

        qdjlrecordnumber=11222211;

 

    }

    if (jyzjcxfqd * 2<tcxfqda & tcxfqda< jyzjcxfqd * 3)

    {

        qdjlrecordnumber=11221122;

    }

    if (jyzjcxfqd <tcxfqda & tcxfqda< jyzjcxfqd * 2)

    {

        qdjlrecordnumber=12121212;

    }

}

 

//记忆柱兴奋后的记忆;

public void xfjy(int xfrecordnumber, int qlabel, int subjyzrecordnumber, int qzqtime, int zrecordnumber,int zqtime)

{

    int zsk=8;int tcxftime=0;int tcxfds=0;int tcxfqda=0;int tccrqd;int recordnumber=0;

    int tcdqjy=0;int dqjytime=0;int tctime=0;int tccqjy=0;

    int lingshilabel=xfrecordnumber-78+67+(qlabel-1)*3;

    getfun (lingshilabel, ref  tcxftime,zsk,fd);

    lingshilabel=xfrecordnumber-78+67+(qlabel-1)*3+1;

    getfun (lingshilabel, ref  tcxfds,zsk,fd);

    lingshilabel=xfrecordnumber-78+67+(qlabel-1)*3+2;

    getfun (lingshilabel, ref  tcxfqda,zsk,fd);

    tccrqd = tcxfqda / tcxfds;

    for ( int sjl = 1; sjl <= tcxfds; sjl++)

    {

        lingshilabel = xfrecordnumber - 78 + 100 - zrecordnumber + subjyzrecordnumber * 4 + (subjyzrecordnumber * 2 - 100) / 2 * (qlabel - 1) + sjl;

        getfun (lingshilabel, ref recordnumber,zsk,fd);

        //qlabel兴奋所记录的那些突触的兴奋

        //获取突触的兴奋强度tcxfqd,qjyzxfqdrecordnumber/tcxfqd获得本次tc需要加的强度,长期短期时间的改写与记录。

        getfun (recordnumber  , ref tctime  ,zsk,fd);

        lingshilabel=recordnumber  + subjyzrecordnumber;

        getfun (lingshilabel, ref tcdqjy,zsk,fd);

        lingshilabel=recordnumber  + subjyzrecordnumber *2;

        getfun (lingshilabel, ref tccqjy,zsk,fd);

        dqjytime= zqtime -  tctime ;

        tcjy( dqjytime,   tcdqjy,  tccqjy);

        int tcxfqd = tcdqjy + tccqjy; //长短期

        tcxfqd = tcxfds * tcxfqd / tcxfqda;

        tcdqjy = tcdqjy + tcxfqd * 4 / 5;

        tccqjy = tccqjy + tcxfqd / 5;

        putfun ( recordnumber,zqtime,zsk,fd);  //所在突的时间;

        lingshilabel= recordnumber  + subjyzrecordnumber;

        putfun ( lingshilabel, tcdqjy,zsk,fd);//所在突触的短期记忆);

        lingshilabel=recordnumber  + subjyzrecordnumber *2;

        putfun ( lingshilabel, tccqjy,zsk,fd);  //长期记忆);

    }

}

 

 

//z = 1表示传出的是根据记忆柱的兴奋强度传出。;

public  void  xfcc(int xfrecordnumber, int qlabel, int subzrecordnumber, int qzqtime, int zrecordnumber, int zqtime, int zsk, int label, int z, int jyzxfqdlabel,int qdjlrecordnumber,int jyzjcxfqd)

{

    int zsk1 = 8;  int tccrqd; int tcxftime = 0; int tcxfds = 0; int tcxfqda = 0;

    int lingshilabel=xfrecordnumber-78+67+(qlabel-1)*3;

    getfun ( lingshilabel, ref tcxftime,zsk1,fd);

    lingshilabel=xfrecordnumber-78+67+(qlabel-1)*3+1;

    getfun ( lingshilabel, ref tcxfds,zsk1,fd);

    lingshilabel=xfrecordnumber-78+67+(qlabel-1)*3+2;

    getfun ( lingshilabel, ref tcxfqda,zsk1,fd);

    tccrqd = tcxfqda / tcxfds; //是传到对应突触去的兴奋强度。;

    if ( zsk == 13)

    {

        tccrqd= 3 * tccrqd; //从奖惩中枢传到奖惩预期中枢的兴奋能力更强。

    }

    int xfccrecordnumber = xfrecordnumber -78 + 88;

    int ccjl=0;int cdtc=0;

    if ( z == 1)

    {

        //根据jyz的兴奋强度传出。;

        int opcheightn=0;

        int zhongjie=0;

       

        qdzh(ref tcxfqda, ref qdjlrecordnumber, ref jyzjcxfqd);

        for (int number = 1; number <= 8; number++)

        {

            zhongjie = opcheightn + zhongjie* 10;

            opcheightn = Convert.ToInt32(qdjlrecordnumber / (Math.Pow(10, (8 - number)))) - zhongjie; //顺序获得8个表示强弱的数字

            zsk1=8;

            lingshilabel=xfrecordnumber-9578+ subzrecordnumber*4-50+ opcheightn;

            getfun (lingshilabel, ref cdtc,zsk1,fd);

            cdtcsub(cdtc,tccrqd, zrecordnumber, subzrecordnumber, qzqtime, label, zsk,qlabelrecordnumber,zqtime, jyzxfqdlabel,tcxfyz);

        }

        zhongjie = 0;

        z = 0;

    }

    else

    {

        //根据记录的recordnumber顺序直接传出。;

        zsk1=8;

        getfun (xfccrecordnumber, ref ccjl,zsk1,fd);

        for (int cc = 1; cc <= ccjl; cc++)

        {

            zsk1=8;

            lingshilabel=xfrecordnumber-9578+subzrecordnumber*3+cc;

            getfun (lingshilabel, ref cdtc,zsk1,fd);

            //传出到记忆柱的突触

            cdtcsub(cdtc,tccrqd, zrecordnumber, subzrecordnumber, qzqtime, label, zsk,qlabelrecordnumber,zqtime, jyzxfqdlabel,tcxfyz);

 

        }

    }

}

 

//zsk是突触所在记忆柱兴奋后所记入的展示框。;

//记忆柱兴奋后传出兴奋,传到另一个记忆柱的突触,会产生一系列的计算:突触的兴奋强度与记忆的计算,兴奋了的突触要记录在段(drecordnumber) 中。这个传入的兴奋强度是纤维兴奋的强度与突触相互作用后的强度。;

//z表示传到奖惩预期中枢

public void cdtcsub(int cdtc, int tccrqd, int zrecordnumber, int subzrecordnumber, int qztime, int label, int zsk, int qlabelrecordnumber, int zqtime, int jyzxfqdlabel, int tcxfyz)

 

{

    int qjyzxftime=0;int qjyzxfqd=0;int qzjyzxftime=0;int zjyzxftime=0;int qjyzxfds=0; int jyzxfqd=0; int jyzxftime=0;int recordnumber=0;

    int tcxftime=0;int tcxfds=0;int tcxfqda=0;int tcjytime;int lingshilabel=0;int jyzxfds=0;

    int tcdqjy=0;int dqjytime=0;int tctime=0;int tccqjy=0;int tcxfqd=0;int xfqdrecordnumber=0;int qxfjyzxftimerecordnumber=0;

    //传出到记忆柱的突触

    //获得突触所在的记忆柱tcszjyz

    int tcszjyz = (cdtc/zrecordnumber) * zrecordnumber;

    int xfrecordnumber = tcszjyz + zrecordnumber -100 + 78;

    // xfrecordnumber = tcszjyz + zrecordnumber -100 + 78 + (z -1) * zrecordnumber;

    zsk=8;

    int cdtc1=cdtc+1*subzrecordnumber;

    int cdtc2=cdtc+2*subzrecordnumber;

    getfun (cdtc, ref tctime,zsk,fd);

    getfun (cdtc1, ref tcdqjy,zsk,fd);

    getfun (cdtc2, ref tccqjy,zsk,fd);

    tcjytime = (zqtime - tctime) * 24 * 3600*100; //10毫秒为单位。;

    tcjy(tcjytime, tcdqjy, tccqjy); //计算突触的遗忘 //计算遗忘后新的长短期记忆;

    tcxfqd = tccrqd + tccqjy + tcdqjy; //长短期9

    //只要传入了突触就会产生记忆;

    tcdqjy = tcdqjy + tcxfqd * 4 / 5;

    tccqjy = tccqjy + tcxfqd  / 5;

    xfqdrecordnumber = tcxfqd;

    if (tcxftime == qztime)

    {

    //表示记忆柱正处于兴奋状态,会影响到传入突触的记忆;

    tcdqjy = tcdqjy + tcxfqda * 4 / 5 / tcxfds;

    tccqjy = tccqjy + tcxfqda / 5 / tcxfds;

    }

    int lingshilabelfd=8;

    putfun( cdtc, zqtime, lingshilabelfd,fd); //所在突的时间。记入这次兴奋的时间);

    cdtc1= cdtc -1*subzrecordnumber;

    putfun( cdtc1, tcdqjy, lingshilabelfd,fd); //所在突触的短期记忆);

     cdtc1= cdtc -2*subzrecordnumber;

    putfun( cdtc1, tccqjy, lingshilabelfd,fd); //长期记忆

    if (tcxfqd> tcxfyz)

    {

 

        //主要是修改记忆柱的一些总的参数,没有兴奋后记入展示框,随后根据易与不易来记入;

        int jyzxftimerecordnumber = xfrecordnumber -78 + 67 + (label -1) * 3; //记忆柱被易化的时间,但不一定被兴奋;

        int qjyzxftimerecordnumber = xfrecordnumber -78 + 67 + Math.Abs(label -2) * 3;

 

        int jyzxfdsrecordnumber = xfrecordnumber -78 + 67 + (label -1) * 3 + 1;

        int qjyzxfdsrecordnumber = xfrecordnumber -78 + 67 + Math.Abs(label -2) * 3 + 1;

 

        int jyzxfqdrecordnumber = xfrecordnumber -78 + 67 + (label -1) * 3 + 2;

        int qjyzxfqdrecordnumber = xfrecordnumber -78 + 67 + Math.Abs(label -2) * 3 + 2;

 

        int xfjyzxftimerecordnumber= xfrecordnumber-78+73+( label-1); //’记忆柱被兴奋的时间

        qxfjyzxftimerecordnumber= xfrecordnumber-78+73+ Math.Abs(label-2);

        zsk=8;

        getfun (qjyzxftimerecordnumber, ref qjyzxftime,zsk,fd);

        getfun (jyzxftimerecordnumber,ref jyzxftime,zsk,fd);

        getfun (jyzxfdsrecordnumber,ref jyzxfqd,zsk,fd);

        getfun (qjyzxfdsrecordnumber, ref qjyzxfqd,zsk,fd);

 

        getfun (jyzxfdsrecordnumber,ref jyzxfds,zsk,fd);

        getfun (qjyzxfdsrecordnumber, ref qjyzxfds,zsk,fd);

 

        getfun (xfjyzxftimerecordnumber, ref zjyzxftime,zsk,fd);

        getfun (qxfjyzxftimerecordnumber, ref qzjyzxftime,zsk,fd);

        //本兴奋周期,这一记忆柱还没有被易化兴奋过。;

        /* get 8, qjyzxftimerecordnumber, qjyzxftime

         get 8, jyzxftimerecordnumber, jyzxftimejyzxftime记忆柱易化的时间

         get 8, jyzxfqdrecordnumber,jyzxfqdjyzxfqd记忆柱易化的强度

         get 8, qjyzxfqdrecordnumber,qjyzxfqd‘记忆柱易化的强度

        get 8, xfjyzxftimerecordnumber, zjyzxftimezjyzxftime表示记忆柱被兴奋的时间

        get 8, qxfjyzxftimerecordnumber, qzjyzxftimeqzjyzxftime表示记忆柱被兴奋的时间

        ‘记忆柱被易化时易化时有两种情况,一种是才开始易化,一种是已经易化过。还有被兴奋过与没有被兴奋过,没有被兴奋过时,这次易化可能带来兴奋也可能不带来兴奋。

         if jyzxftime<zqtime then ‘本兴奋周期,这一记忆柱还没有被易化过。*/

 

        if (jyzxftime<zqtime) //‘本兴奋周期,这一记忆柱还没有被易化过。

        {

        if (qzjyzxftime == qztime)

        {

            //前一兴奋周期它被选择兴奋,这一兴奋周期它正在兴奋。;

             jyzxfqd = xfqdrecordnumber + qjyzxfqd / 2;  //兴奋强度减半;

             jyzxftime = zqtime;

            jyzxfds= jyzxfds+1;

        }

        if (qjyzxftime<qztime)

        {

            //前一兴奋周期它没有兴奋。;

            jyzxfqd = xfqdrecordnumber;

            jyzxftime = zqtime;

            jyzxfds= jyzxfds+1;

        }

        putfun( jyzxftimerecordnumber, jyzxftime, zsk,fd);

        putfun ( jyzxfdsrecordnumber, jyzxfds,zsk,fd);

        putfun( jyzxfqdrecordnumber, jyzxfqd, zsk,fd);

        }

 

        if (jyzxftime == zqtime)

        {

            //这种情况下,这一刻这个记忆柱的传入易化不是第一次。;在传入记忆中计算。

            jyzxfds= jyzxfds+1;

            jyzxfqd = jyzxfqd + xfqdrecordnumber; //tcxfqda= tcxfqda+ tccrqd ;

            putfun( jyzxftimerecordnumber, jyzxftime, zsk,fd);

            putfun ( jyzxfdsrecordnumber, jyzxfds,zsk,fd);

            putfun( jyzxfqdrecordnumber, jyzxfqd, zsk,fd);

        }

        //记入记忆柱的段

        if (cdtc%9600<9500)

        {

            lingshilabel= tcszjyz + (subzrecordnumber) * 4 + (label -1) * 1550 + jyzxfds;

            putfun( lingshilabel, cdtc, zsk,fd);

        }

        //记忆柱没有记录入过展示框的情况。(需要专门的sub);

        if (zjyzxftime<zqtime && jyzxfqd>jyzxfqdlabel)

        {

            //分易兴奋的与不易兴奋的记忆柱。;

            int ht=xfjyzxftimerecordnumber/9600%2;

            if (ht==0)

            zsk=5 ;

            else

            zsk=6 ;

            jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

        }

 

        /*//突触兴奋到一定强度要tcxfyz(突触兴奋阈值) 。突触兴奋只需要记入段。同时要改写总的记录时间、总数与强度;

        zsk=8;

        lingshilabel= tcszjyz + zrecordnumber -100 + 67 + (label -1) * 3 ;

        getfun (lingshilabel, ref tctime,zsk,fd);

        lingshilabel= lingshilabel + 1;

        getfun (lingshilabel, ref tcxfds,zsk,fd);

        lingshilabel= lingshilabel + 1;

        getfun (lingshilabel, ref tcxfqda,zsk,fd);

        if(tctime==zqtime)

        {

        tcxfds = tcxfds + 1;

        lingshilabel= lingshilabel - 1;

        putfun( lingshilabel, tcxfds, lingshilabelfd,fd); //段突数);

        tcxfqda= tcxfqda+ tccrqd ;

        lingshilabel= lingshilabel + 1;

        putfun( lingshilabel, tcxfqda, lingshilabelfd,fd);

        lingshilabel= tcszjyz + (subzrecordnumber) * 4 + (label -1) * 1550 + tcxfds;

        putfun( lingshilabel, cdtc, lingshilabelfd,fd);

        }

        else

        {

        tcxfds=1;

        tcxfqda= tccrqd;

        lingshilabel= tcszjyz + zrecordnumber -100 + 67 + (label -1) * 3 ;

        putfun( lingshilabel, zqtime, lingshilabelfd,fd);

        lingshilabel= lingshilabel + 1;

        putfun( lingshilabel, tcxfds, lingshilabelfd,fd);

        lingshilabel= lingshilabel + 1;

        putfun( lingshilabel, tcxfqda, lingshilabelfd,fd);

        lingshilabel= tcszjyz + (subzrecordnumber) * 4 + (label -1) * 1550 + tcxfds;

        putfun( lingshilabel, cdtc, lingshilabelfd,fd);*/

        }

    }

 

 

 

     void cjcr( int qlabelrecordnumber, int xfrecordnumber, int xfqdrecordnumber, int zqtime,  int qzqtime, int label, int jyzxfqdlabel)

    {

        int qjyzxftime=0;int qjyzxfqd=0;int qzjyzxftime=0;int zjyzxftime=0;int qjyzxfds=0; int jyzxfqd=0; int jyzxftime=0;int recordnumber=0;

        int tcxftime = 0; int tcxfds = 0; int tcxfqda = 0; int tcjytime; int lingshilabel = 0; int jyzxfds = 0; int zsk = 8;

        int tcdqjy=0;int dqjytime=0;int tctime=0;int tccqjy=0;int tcxfqd=0;int qxfjyzxftimerecordnumber=0;

         //主要是修改记忆柱的一些总的参数,没有兴奋后记入展示框,随后根据易与不易来记入;

        int zjxfrecordnumber = (xfrecordnumber/9600)*9600;

        int jyzxftimerecordnumber = zjxfrecordnumber + (label -1) * 3; //记忆柱被易化的时间,但不一定被兴奋;

        int qjyzxftimerecordnumber = zjxfrecordnumber + Math.Abs(label -2) * 3;

 

        int jyzxfdsrecordnumber = zjxfrecordnumber + (label -1) * 3 + 1;

        int qjyzxfdsrecordnumber = zjxfrecordnumber + Math.Abs(label -2) * 3 + 1;

 

        int jyzxfqdrecordnumber = zjxfrecordnumber + (label -1) * 3 + 2;

        int qjyzxfqdrecordnumber = zjxfrecordnumber + Math.Abs(label -2) * 3 + 2;

 

        int xfjyzxftimerecordnumber= xfrecordnumber-78+73+( label-1); //’记忆柱被兴奋的时间

        qxfjyzxftimerecordnumber= xfrecordnumber-78+73+ Math.Abs(label-2);

        zsk=8;

        getfun (qjyzxftimerecordnumber, ref qjyzxftime,zsk,fd);

        getfun (jyzxftimerecordnumber,ref jyzxftime,zsk,fd);

        getfun (jyzxfdsrecordnumber,ref jyzxfqd,zsk,fd);

        getfun (qjyzxfdsrecordnumber, ref qjyzxfqd,zsk,fd);

 

        getfun (jyzxfdsrecordnumber,ref jyzxfds,zsk,fd);

        getfun (qjyzxfdsrecordnumber, ref qjyzxfds,zsk,fd);

 

        getfun (xfjyzxftimerecordnumber, ref zjyzxftime,zsk,fd);

        getfun (qxfjyzxftimerecordnumber, ref qzjyzxftime,zsk,fd);

        //本兴奋周期,这一记忆柱还没有被易化兴奋过。;

        /* get 8, qjyzxftimerecordnumber, qjyzxftime

         get 8, jyzxftimerecordnumber, jyzxftimejyzxftime记忆柱易化的时间

         get 8, jyzxfqdrecordnumber,jyzxfqdjyzxfqd记忆柱易化的强度

         get 8, qjyzxfqdrecordnumber,qjyzxfqd‘记忆柱易化的强度

        get 8, xfjyzxftimerecordnumber, zjyzxftimezjyzxftime表示记忆柱被兴奋的时间

        get 8, qxfjyzxftimerecordnumber, qzjyzxftimeqzjyzxftime表示记忆柱被兴奋的时间

        ‘记忆柱被易化时易化时有两种情况,一种是才开始易化,一种是已经易化过。还有被兴奋过与没有被兴奋过,没有被兴奋过时,这次易化可能带来兴奋也可能不带来兴奋。

         if jyzxftime<zqtime then ‘本兴奋周期,这一记忆柱还没有被易化过。*/

 

        if (jyzxftime<zqtime) //‘本兴奋周期,这一记忆柱还没有被易化过。

        {

            if (qzjyzxftime == qzqtime)

            {

                //前一兴奋周期它被选择兴奋,这一兴奋周期它正在兴奋。;

                jyzxfqd = xfqdrecordnumber + qjyzxfqd / 2;  //兴奋强度减半;

                jyzxftime = zqtime;

                jyzxfds= jyzxfds+1;

            }

            if (qjyzxftime<qzqtime)

            {

                //前一兴奋周期它没有兴奋。;

                jyzxfqd = xfqdrecordnumber;

                jyzxftime = zqtime;

                jyzxfds= jyzxfds+1;

            }

            putfun( jyzxftimerecordnumber, jyzxftime, zsk,fd);

            putfun ( jyzxfdsrecordnumber, jyzxfds,zsk,fd);

            putfun( jyzxfqdrecordnumber, jyzxfqd, zsk,fd);

        }

 

        if (jyzxftime == zqtime)

        {

            //这种情况下,这一刻这个记忆柱的传入易化不是第一次。;在传入记忆中计算。

            jyzxfds= jyzxfds+1;

            jyzxfqd = jyzxfqd + xfqdrecordnumber; //tcxfqda= tcxfqda+ tccrqd ;

            putfun( jyzxftimerecordnumber, jyzxftime, zsk,fd);

            putfun ( jyzxfdsrecordnumber, jyzxfds,zsk,fd);

            putfun( jyzxfqdrecordnumber, jyzxfqd, zsk,fd);

        }

        //记入记忆柱的段

        if (xfrecordnumber%9600<9500) //突触才记入段,其它的不记入。

        {

 

            lingshilabel = zjxfrecordnumber + (1600) * 4 + (label - 1) * 1550 + jyzxfds;

            putfun(lingshilabel, xfrecordnumber, zsk, fd);

        }

 

        //记忆柱没有记录入过展示框的情况。(需要专门的sub);

        if (zjyzxftime<zqtime && jyzxfqd>jyzxfqdlabel)

        {

            //分易兴奋的与不易兴奋的记忆柱。;

            if (xfjyzxftimerecordnumber<3002*9600*2)

            {

                putfun ( xfjyzxftimerecordnumber, zqtime,zsk,fd);//记录兴奋的时间

                if (xfjyzxftimerecordnumber/9600%2==0)

                zsk=5 ;

                else

                zsk=6 ;

                jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

            }

            if (xfjyzxftimerecordnumber>3002*9600*2)

            {

                zsk=4 ;

                jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

            }

        }

    }

 

     void jrzsk( int zsk, int qlabelrecordnumber,  int xfrecordnumber,  int zqtime,  int label)

    {

        int jrlabel=0;

        getfun (qlabelrecordnumber, ref jrlabel,zsk,fd);

        int lingshilabel= jrlabel + 1;

        putfun( qlabelrecordnumber, lingshilabel, zsk,fd);

        lingshilabel= qlabelrecordnumber + jrlabel + 1;

        putfun( lingshilabel, xfrecordnumber, zsk,fd);

        lingshilabel= xfrecordnumber -78 + 73 + (label -1);

        int zsk1=8;

        putfun ( lingshilabel,zqtime, zsk1, fd);//记忆柱被易化达到兴奋的程度);

    }

 

 /*void qmdjrzsk(ref int mdjclabel, ref int labelnumber, ref int labelrecordnumber)

{

int zsk=10;

int onelabel=1;

if (mdjclabel>1)

{

 labelnumber = labelnumber + labelnumber1;

putfun ( onelabel, labelnumber, zsk,fd);

for (recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

{

    //,计算展示框

    putfun ( onelabel, labelnumber, zsk,fd);

    lingshilabel=1 + (recordnumber);

    putfun ( lingshilabel, xfrecordnumber, zsk,fd);

}

}

}*/

    int labelnumber;int recordnumber;int qdmdjcyq=0;

     void pjjs(ref int zsk, ref int labelrecordnumber, ref int qlabel, ref int apjjsz,ref int zsk1)

    {

         int ajyzxfqdrecordnumber=0;int lingshilabel= 1;int xfrecordnumber=0;int jyzxfqd=0;int labelnumber=0;

         getfun (labelrecordnumber,ref labelnumber, zsk,fd);

        for (int recordnumber = 1;  recordnumber <= labelnumber; recordnumber++)

        {

            //,计算展示框

            lingshilabel= labelrecordnumber+recordnumber;

            getfun (lingshilabel,ref xfrecordnumber, zsk,fd);

            int jyzxfqdrecordnumber = xfrecordnumber -78 + 69 + (qlabel -1) * 3 ; //获得易兴奋的记忆柱的前兴奋强度

            getfun (jyzxfqdrecordnumber,ref jyzxfqd, zsk,fd);

            ajyzxfqdrecordnumber=ajyzxfqdrecordnumber+jyzxfqd;

        }

        int pjjsz=ajyzxfqdrecordnumber / labelnumber; //获得主注意对象的易兴奋记忆柱的平均兴奋强度,为选择下一次的主注意对象做准备

        ajyzxfqdrecordnumber = 0;

        //pjjsz记入展示框,然后计算出pjjsz100,平均;获得前一段时间的平均兴奋强度

   

        getfun (lingshilabel,ref labelnumber, zsk1,fd);

        if (labelnumber==0)

        {

            labelnumber=1;

        }

        if (labelnumber>=100)

        {

            labelnumber=1;

        }

        int lingshilabel1= labelnumber + 1;

        putfun ( lingshilabel, lingshilabel1, zsk1,fd);

        putfun ( lingshilabel1, pjjsz, zsk,fd);

        for (int e = 1; e <= 100; e++)

        {

            e=e+1;

            getfun (e,ref pjjsz, zsk1,fd);

             apjjsz = pjjsz + apjjsz;

        }

    }

 

        private void button1_Click(object sender, EventArgs e)

        {

           

            int qlabel;

            int  xz=0;

            for (int n = 1; n <= 8000; n++)

            {

                // zzymddx cjcr zzydx ztzs xf xfy jcyqqd qzzymddx qdzs zzydxxz jcyq jczs pjqdzsqdpjcfqd pjcyqqd

                int ling=0;

                for (int fdlabel = 1; fdlabel<= 17; fdlabel ++)

                {

                    putfun(  n, ling, fdlabel,fd ); //

                }

            }

            //zzymddx cjcr zzydx ztzs xf xfy jcyqqd qzzymddx qdzs zzydxxz jcyq jczs pjqdzsqd pjcfqd pjcyqqdzzydxxzydzs

            int jyzjcxfqd; int tcxfqda=0;  int qdjlrecordnumber=0; int qdmdjcyq=0 ;

            int tcxfyz;int lingshilabel;

            int jyzpjxfqd;

            int pjjcqd=0;int tjrecordnmber=0;

            int pjxfqd=0;

            int zrecordnumber=9600;

            int subzrecordnumber;

            subzrecordnumber = 1600;

            int subjyzrecordnumber = subzrecordnumber;

            zrecordnumber = 9600;

            int label=0;

            int jyzqdmdjcyqrecordnumber;

            jyzqdmdjcyqrecordnumber = 41260800 + 9578;//记录的传到奖惩预期中枢的动力大小。总的记录数为165043200

            int drecordnumber = (subzrecordnumber -100) / 2; //段记录;

            int z = 1;//表示传出的是根据记忆柱的兴奋强度传出。传出到其联络区;

            int jsjyzrecordnumber;

            jsjyzrecordnumber =19238400 ; //奖赏中枢的核心记忆柱群的不易兴奋的记忆柱

            int cfjyzrecordnumber; //惩罚中枢的核心记忆柱群的不易兴奋的记忆柱

            cfjyzrecordnumber =19238400+9600*2 ;

            jyzjcxfqd = 25;int jyzxfqdlabel;

            tcxfyz = 1; //突触兴奋阈值。;

            int zjajctcxfqda=0;

            int qyaacyqjs = 0; int jyzxfqd=0;

            int jcjslabel = 0; int pjqdzsqd = 1; int pjcyqqd = 1;

            int jcjslabel20 = 0; int zzydxpjyzqd = 0;

            int jcjslabel30=0;

            int jjyzxfqd = 0; int cjyzxfqd = 0; int jxfrecordnumber = 0; int cxfrecordnumber = 0;

            //int[] cq = new int[69]; //定义传入强度中枢的类型感觉中枢的联络区1,可选择成为主注意对象,奖惩中枢的联络区5,3是强度中枢的联络区。

            //int[] yd = new int[69];

 

            //运动中枢,奖惩中枢的记忆柱(15),第三个是运动中枢的传入刺激,可以人为的调节运动中枢易化兴奋状态,第四个是调节运动调节中枢的易化兴奋情况的记忆柱。2021中枢是总和运动中枢及运动调节中枢的兴奋强度的记忆柱以选择兴奋。27中枢的19基本记忆柱群是记录奖赏预期总,1018记录惩罚预期总,1927是运动感觉,2836是运动调节。;

            //只有主注意对象从易兴奋的记忆柱中选择,其它的都计算不易兴奋的记忆柱

 

            DateTime DateTime1 = new DateTime(2016, 1, 2, 1, 12, 00, 1); //时间标准

            TimeSpan Ts1 = new TimeSpan(DateTime1.Ticks); //转换成Ticks

           

            int  zqtime=0;

            int recordnumber=0;int xfrecordnumber=0;

            restart:;

            int qzqtime =  zqtime; //设置时间标志。qzqtime前一兴奋周期的兴奋时间

            TimeSpan ts2 = new TimeSpan(DateTime.Now.Ticks);

            TimeSpan ts = ts2.Subtract(Ts1).Duration();

            //记忆的时间是也是整数,直接用整数来计算

            //记忆的时间是也是整数,直接用整数来计算

            double mttt = (ts.TotalSeconds);

            int ma = Convert.ToInt32(mttt);

            zqtime = ma;

            //这一兴奋周期的时间.它是记忆柱总的兴奋时间,也是展示框的兴奋时间

            if ((int) label == 1) //确定本兴奋周期读的展示框的标志(label)

            {

                label = 2;

            qlabel = 1; //后一兴奋周期展示框的标志,也是记忆标志,也是前一兴奋周期兴奋的记忆柱所在展示框。;

            }

            else

            {

                label = 1;

                qlabel = 2;

            }

            int zsk; int gotogjzs=0;

            int labelrecordnumber = (label -1) * 4000 + 1; //本周期被读取的展示框的记录标志。它记录的是前一兴奋周期记录下来的将要兴奋的记忆柱;

            //labelrecordnumber,计算后记入qlabelrecordnumber

            int qlabelrecordnumber = (qlabel -1) * 4000 + 1; //后一兴奋周期将要兴奋的记忆柱。也是前一兴奋周期所在展示框;

           for (zsk = 1; zsk <= 17; zsk++) //获取与设置读写的展示框。前一周期被读取的展示框的记录标志要归零,成为后一兴奋周期。

            {

                 lingshilabel=1;

                if (zsk==8) continue ;

                putfun( qlabelrecordnumber, lingshilabel, zsk,fd);

            } //for zsk=1 to 17

 

            labelrecordnumber = (label -1) * 4000 + 1; //本周期被读取的展示框的记录标志。它记录的是前一兴奋周期记录下来的将要兴奋的记忆柱;

 

            //不易兴奋的记忆柱对易兴奋的抑制。这是智能软件重要的一功能。;

            zsk=5;int ajyzxfqdrecordnumber=0;int xfqdrecordnumber=0;

            getfun( labelrecordnumber, ref labelnumber, zsk, fd);

            if (labelnumber == 0)

            {

                gotogjzs = 1;

                goto gogjzs;

            }

            for (recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

            {

                lingshilabel= labelrecordnumber+recordnumber;

               

                getfun( lingshilabel,ref xfrecordnumber, zsk, fd);//读,计算展示框/

                lingshilabel= xfrecordnumber-78+80;

                int zslabel=0;

            getfun( lingshilabel, ref zslabel, zsk, fd); //‘获得中枢标志clabel

            if (zslabel==3) // ‘记入12以进行进行奖惩预期

            {

                zsk=9;

                jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

            }

            if (zslabel==7) // ‘记入12以进行进行奖惩预期

            {

                zsk=13;

                jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

            }

            if (zslabel==8) // ‘记入12以进行进行奖惩预期

            {

                zsk=9;

                jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

            }

 

            if (zslabel==5) // ‘记入12以进行进行奖惩预期

            {

                zsk=12;

                jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

            }

            if (zslabel==6) // ‘记入15以进行进行运动选择

            {

                zsk=17;

                jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

            }

                int jyzxfqdrecordnumber = xfrecordnumber -78 + 67 + (qlabel -1) * 3+2; //获得记忆柱的前兴奋强度的recordnumber

                 zsk=8;

            //获得记忆柱的前兴奋强度

               

                getfun( jyzxfqdrecordnumber, ref  xfqdrecordnumber, zsk, fd);

                int xfqdrecordnumbern= -1*(xfqdrecordnumber * 2 / 3); //传入的抑制强度

                xfrecordnumber=xfrecordnumber+zrecordnumber; //获得易兴奋的记忆柱);

                jyzxfqdlabel = 10;

                zsk1 = 6;

                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);; //不易兴奋的记忆柱的抑制传入对应的易兴奋的记忆柱

                ajyzxfqdrecordnumber=ajyzxfqdrecordnumber+xfqdrecordnumber; //兴奋的记忆柱的总的兴奋强度

            }

            int bypjyzqd=ajyzxfqdrecordnumber / (labelnumber * 5); //不易兴奋的记忆柱对不易兴奋的记忆柱的平均抑制强度

            for (recordnumber = 1; recordnumber <= labelnumber; recordnumber++)//扩布抑制,以免皮质过度兴奋

            {

                jyzxfqdlabel = 25;

                zsk1 = 5;

                xfqdrecordnumber=-bypjyzqd;

                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

            }

            ajyzxfqdrecordnumber = 0;

 

            //获得几个参数的平均值;

            zsk = 9;

            zsk1 = 14; //平均强度中枢

           

            pjjs(ref  zsk, ref  labelrecordnumber, ref  qlabel, ref  pjqdzsqd, ref  zsk1);

            zsk1 = 15; //平均奖惩强度;

            zsk = 13;

             int pjcfqd=0;

            pjjs(ref  zsk, ref  labelrecordnumber, ref  qlabel,  ref pjcfqd, ref zsk1 ) ;

            zsk1 = 16; //平均奖惩预期强度;

            zsk = 12;

           

            pjjs(ref  zsk, ref  labelrecordnumber, ref  qlabel, ref  pjcyqqd, ref  zsk1);

 

            //获得主注意对象的易兴奋记忆柱的平均兴奋强度,为选择下一次的主注意对象做准备;

            zsk=3;

           

           

           

            getfun( labelrecordnumber,ref labelnumber, zsk, fd);

            for ( recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

            {

                lingshilabel=labelrecordnumber+recordnumber;

                zsk=3;

                getfun( lingshilabel,ref xfrecordnumber, zsk, fd); //,计算展示框

                int jyzxfqdrecordnumber = xfrecordnumber -78 + 69 + (qlabel -1) * 3 + zrecordnumber; //获得易兴奋的记忆柱的前兴奋强度

                zsk=8;

                getfun( jyzxfqdrecordnumber,ref jyzxfqd, zsk, fd);

                ajyzxfqdrecordnumber=ajyzxfqdrecordnumber+jyzxfqd;

            }

            zzydxpjyzqd=ajyzxfqdrecordnumber / (labelnumber); //获得主注意对象的易兴奋记忆柱的平均兴奋强度,为选择下一次的主注意对象做准备

            ajyzxfqdrecordnumber = 0;

 

            //对易兴奋的记忆柱进行分类记录

            zsk=6;

 

            getfun( labelrecordnumber,ref labelnumber, zsk, fd);

            for (recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

            {

                lingshilabel=labelrecordnumber+recordnumber;

                zsk=6;

                getfun( lingshilabel, ref xfrecordnumber, zsk, fd);//,计算展示框

                int jyzxfqdrecordnumber = xfrecordnumber -78 + 69 + (qlabel -1) * 3 + zrecordnumber; //获得主记忆柱的前兴奋强度

                zsk=8;

                getfun(  jyzxfqdrecordnumber,ref jyzxfqd, zsk, fd);

                lingshilabel= xfrecordnumber-78+80;

                int zslabel=0;

                getfun(lingshilabel, ref zslabel, zsk, fd); //‘获得中枢标志clabel

                int u= Convert.ToInt32(zzydxpjyzqd*1.35);

                 if (jyzxfqd>u  && zslabel==1 ) //记入11以进行选择主注意对象,保证是感觉联络区的不易兴奋的记忆柱

                {

                    zsk=11;

                    jrzsk(zsk,qlabelrecordnumber,xfrecordnumber,zqtime,label);

                }

                    ajyzxfqdrecordnumber=ajyzxfqdrecordnumber+jyzxfqd;

              }

                int ypjyzqd=ajyzxfqdrecordnumber / (labelnumber); //获得状态中枢兴奋的主记忆柱的平均兴奋强度

                ajyzxfqdrecordnumber = 0;

 

 

                //输入tcxfqda,xfrecordnumber,获得qdjlrecordnumber。对qdjlrecordnumber进行处理。兴奋的运动中枢的记忆柱记入17,和奖惩预期中枢一样。人为控制运动中枢的兴奋。;

                if (tjrecordnmber>1000)

                {

                    qdzh(ref tcxfqda, ref qdjlrecordnumber, ref jyzjcxfqd);

                    int zhongjie=0;int opcheightn=0;

                    for (int number = 1; number <= 8; number++)

                    {

                        zhongjie = (opcheightn + zhongjie) * 10;

                        opcheightn =  Convert.ToInt32(qdjlrecordnumber / (Math.Pow(10, (8 - number)))) - zhongjie; //顺序获得8个表示强弱的数字

                        int arecordnmbern=tjrecordnmber+( number-1)*9600*2*2+ (opcheightn-1)*9600*2; //tj调节运动所在

                        int recordnmbern= arecordnmbern+9586;

                        //对记忆柱进行强度中枢易化加。

                        int tccrqd = 30;

                        zsk = 17;

                        int cdtc=recordnmbern;

                        jyzxfqdlabel = 25;

                        cdtcsub(cdtc,tccrqd, zrecordnumber, subzrecordnumber, qzqtime, label, zsk,qlabelrecordnumber,zqtime, jyzxfqdlabel,tcxfyz);

                    }

                }

            gogjzs: ;

                for (zsk = 1; zsk <= 13; zsk++)

                {

 

                    if (zsk == 7)

                    {

                        goto m8zsk;

                    }

                    if (zsk == 8)

                    {

                        goto m8zsk;

                    }

                    if (zsk == 10)

                    {

                        goto m8zsk;

                    }

                    if (zsk == 11)

                    {

                        goto m8zsk;

                    }

                    if (zsk == 12)

                    {

                        goto m8zsk;

                    }

                    if (gotogjzs == 1)

                    {

                        zsk = 2;

                    }

                    getfun(labelrecordnumber, ref labelnumber, zsk, fd);

                    for (recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

                    {

                        lingshilabel = labelrecordnumber + recordnumber;

                        getfun(lingshilabel, ref xfrecordnumber, zsk, fd);//,计算展示框

 

                        //环境状态下,当一行为对象与其奖赏相关时,它在这一环境状态下,会被易化。而一行为对象在环境状态下与惩罚相关时,它应被抑制。;

                        //状态中枢的功能:1兴奋到一定程度的皮质能兴奋状态中枢对应的基本记忆柱群。2状态中枢的主记忆柱易化相应皮质记忆柱群。3主记忆柱对应易化其他主记忆柱及奖赏记忆柱和惩罚记忆柱。4奖惩兴奋强度直接影响当时兴奋的状态中枢的对应记忆柱,兴奋强度与主记忆柱的兴奋强度密切相关。5;

                        //状态中枢的基本记忆柱群的主记忆柱的兴奋强度与奖惩密切相关,而其兴奋强度又影响了兴奋性记忆的强度。所以,预期对象能带来奖赏,兴奋强。;

                        //奖惩预期要与状态中枢兴奋的记忆柱建立记忆联系。兴奋越强记忆越强。;

                        //奖惩预期中枢兴奋时,同时兴奋的主注意对象与它建立记忆联系,并推高它的兴奋。;

                        //目的动力越高,目的对象兴奋的越强。对象引起的动力越高,对象兴奋的越强。所以,;

                        switch (zsk) //zzymddx

                        {

                            case 1:

                                //主注意对象所对应的状态中枢的记忆柱兴奋传出兴奋,记忆兴奋。;

                                //主注意目的对象的兴奋强度与其动力预期及其受到的易化有关。;

                                jxfrecordnumber = xfrecordnumber + zrecordnumber;

                                cxfrecordnumber = xfrecordnumber + (zrecordnumber) * 2;

                                lingshilabel = xfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                getfun(lingshilabel, ref tcxfqda, zsk, fd);

                                lingshilabel = jxfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                

                                getfun(lingshilabel, ref jjyzxfqd, zsk, fd);

                                lingshilabel = cxfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                getfun(lingshilabel, ref cjyzxfqd, zsk, fd);

 

                                tcxfqda = tcxfqda * (jjyzxfqd + cjyzxfqd) / pjqdzsqd; //计算获得主记忆柱的兴奋强度

                                int n = qdmdjcyq / pjcyqqd; //奖惩预期强度除以平均奖惩预期强度

                                int zzymddxqd = Convert.ToInt32(pjxfqd * n * 1.3) + tcxfqda; //获得主注意目的对象的兴奋强度。pjxfqd状态中枢主记忆柱在某一时刻的平均兴奋强度

                                //主注意对象引起的动力改变与主注意目的对象建立记忆联系。;

                                if (n > 0)

                                {

                                    jjyzxfqd = Convert.ToInt32(pjxfqd * n * 1.2) + jjyzxfqd;

                                }

                                else

                                {

                                    cjyzxfqd = -Convert.ToInt32(pjxfqd * n * 1.2) + cjyzxfqd;

                                }

                                jyzxfqd = zzymddxqd;

                                zsk = 8;

                                lingshilabel = xfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                putfun(lingshilabel, jyzxfqd, zsk, fd);

                                lingshilabel = jxfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                putfun(lingshilabel, jjyzxfqd, zsk, fd);

                                lingshilabel = cxfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                putfun(lingshilabel, cjyzxfqd, zsk, fd);

                                //主注意目的对象在状态中枢的兴奋记忆与传出;

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                jyzxfqdlabel = 25;

                                xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel, qdjlrecordnumber, jyzjcxfqd);

 

                                //易化皮质对应的基本记忆柱群。

 

                                int jcjyzxfqd = jjyzxfqd + cjyzxfqd - Convert.ToInt32(pjxfqd * n * 1.2); //要去除主注意目的对象的奖惩预期强度的影响。;

                                n = jcjyzxfqd / pjjcqd; //除于基础奖惩兴奋;

                                if (n >= 0)

                                {

                                    jyzxfqd = n * jyzxfqd + jyzxfqd; //主的兴奋强度;

                                    jjyzxfqd = jjyzxfqd + jyzxfqd / 5;

                                }

                                else

                                {

                                    jyzxfqd = -1 / n * jyzxfqd + jyzxfqd; //主的兴奋强度;

                                    cjyzxfqd = cjyzxfqd + jyzxfqd / 5;

                                }

 

                                jyzxfqd = jyzxfqd / 2; //减小目的对象对皮质的直接影响影响。;

                                int zjjyzxfqd = jyzxfqd;

 

                                jyzxfqdlabel = 25;

                                xfqdrecordnumber = jyzxfqd;

                                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                xfrecordnumber = xfrecordnumber + zrecordnumber;

                                jyzxfqd = zjjyzxfqd;

 

                                jyzxfqdlabel = 10;

                                xfqdrecordnumber = jyzxfqd;

                                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                //不让状态中枢的展示框再将它兴奋一次,删除了。;

                                break;

                            //crcj感觉中枢的传入

                            case 2:

                                //传入记忆柱的位置及强度。位置表示什么类型的感觉传入,强度是感觉传入的强度;

                                lingshilabel = labelrecordnumber + recordnumber + 2000; // xfrecordnumber>9500,才不会记入传出因为是感觉传入

 

                                getfun(lingshilabel, ref xfqdrecordnumber, zsk, fd);

 

                                jyzxfqdlabel = 25;

                                zsk1 = 5; //是对不易兴奋的易化兴奋;

                                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                jyzxfqdlabel = 10;

                                zsk1 = 6; //是对易兴奋的易化兴奋;

                                xfrecordnumber = xfrecordnumber + 9600;

                                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                break;

 

                            //zzydx

                            case 3:

 

                                //主注意对象的动力,目的对象的动力共同作用。;

                                //getfun //获得状态中枢奖与惩的兴奋强度,进行整合,然后乘以,获得主的兴奋强度

                                //put //写入重新计算获得的奖惩的兴奋强度加主的五分之一。

                                zsk1 = 8;

                                int lingshilabel1 = xfrecordnumber;

                                lingshilabel = xfrecordnumber - 78 + 87;

                                getfun(lingshilabel, ref xfrecordnumber, zsk1, fd);

                                xfrecordnumber = xfrecordnumber + 78 - 87;

                                jxfrecordnumber = xfrecordnumber + zrecordnumber;

                                cxfrecordnumber = xfrecordnumber + (zrecordnumber) * 2;

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                getfun(lingshilabel, ref jyzxfqd, zsk1, fd);

                                lingshilabel = jxfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                getfun(lingshilabel, ref jjyzxfqd, zsk1, fd);

                                lingshilabel = cxfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                getfun(lingshilabel, ref cjyzxfqd, zsk1, fd);

                                lingshilabel = xfrecordnumber;

                                getfun(lingshilabel, ref recordnumber, zsk, fd);

                                //不让状态中枢的展示框再将它兴奋一次,删除。;

 

 

                                jcjyzxfqd = jjyzxfqd + cjyzxfqd + qdmdjcyq;

                                n = jcjyzxfqd / pjjcqd; //除于基础奖惩兴奋;

                                if (n >= 0)

                                {

                                    jyzxfqd = 3 * n * jyzxfqd + jyzxfqd; //主的兴奋强度;

                                    jjyzxfqd = jjyzxfqd + jyzxfqd / 5;

                                }

                                else

                                {

                                    jyzxfqd = 2 * jyzxfqd + jyzxfqd; //主的兴奋强度;

                                    cjyzxfqd = cjyzxfqd + jyzxfqd / 5;

                                }

                                zsk1 = 8;

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                putfun(lingshilabel, jyzxfqd, zsk1, fd);

                                lingshilabel = jxfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                putfun(lingshilabel, jjyzxfqd, zsk1, fd);

                                lingshilabel = cxfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                putfun(lingshilabel, cjyzxfqd, zsk1, fd);

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                jyzxfqdlabel = 25;

                                xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel, qdjlrecordnumber, jyzjcxfqd);

 

                                //易化传到皮质中枢;

                                if (jyzxfqd >= 25) //易化皮质对应的基本记忆柱群。

                                {

                                    xfrecordnumber = lingshilabel1;

 

                                    zjjyzxfqd = jyzxfqd;

                                    zsk1 = 5;

                                    jyzxfqdlabel = 25;

                                    cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                    xfrecordnumber = xfrecordnumber + zrecordnumber;

                                    jyzxfqd = zjjyzxfqd;

                                    zsk1 = 6;

                                    jyzxfqdlabel = 10;

                                    cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                }

                                break;

                            // ztzs

                            case 4:

                                //1、与奖惩建立联系。2、顺序读取分类兴奋。

                                zsk1 = 8;

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                jyzxfqd = 0;

                                getfun(lingshilabel, ref jyzxfqd, zsk1, fd);

                                tcxfqda = jyzxfqd;

                                int zj = ((xfrecordnumber - 9600 * 2 * 3002) / 9600) % 3;

 

                                if (zj == 1 | zj == 2)

                                {

                                    //是兴奋的与其建立记忆联系。一个个读取,一个个计算。兴奋强度除去平均兴奋强度*平均奖惩然后加上。

                                    if (qdmdjcyq > 0) //与奖赏建立记忆联系做为奖赏的强度加

                                    {

                                        jyzxfqd = jyzxfqd + qdmdjcyq;

                                    }

                                    if (qdmdjcyq < 0) //与惩罚建立记忆联系做为惩罚的强度加

                                    {

                                        jyzxfqd = jyzxfqd + qdmdjcyq;

                                    }

                                }

                                if (zj == 0)

                                {

                                    //getfun //获得状态中枢奖与惩的兴奋强度,进行整合,然后乘以,获得主的兴奋强度

                                    //put //写入重新计算获得的奖惩的兴奋强度加主的五分之一。

                                    jxfrecordnumber = xfrecordnumber + zrecordnumber;

                                    cxfrecordnumber = xfrecordnumber + (zrecordnumber) * 2;

                                    lingshilabel = jxfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                    getfun(lingshilabel, ref jjyzxfqd, zsk1, fd);

                                    lingshilabel = cxfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                    getfun(lingshilabel, ref cjyzxfqd, zsk1, fd);

                                    jcjyzxfqd = jjyzxfqd + cjyzxfqd;

                                    n = jcjyzxfqd / pjjcqd; //除于基础奖惩兴奋;

                                    if (n >= 0)

                                    {

                                        jyzxfqd = n * jyzxfqd + tcxfqda; //主的兴奋强度;

                                        jjyzxfqd = jjyzxfqd + jyzxfqd / 5;

                                    }

                                    else

                                    {

                                        jyzxfqd = -1 / n * jyzxfqd + tcxfqda; //主的兴奋强度;

                                        cjyzxfqd = cjyzxfqd + jyzxfqd / 5;

                                    }

                                    if (qdmdjcyq > 0) //与奖赏建立记忆联系做为奖赏的强度加

                                    {

                                        jyzxfqd = jyzxfqd + jyzxfqd * (qdmdjcyq / pjjcqd); //主的兴奋强度;

                                        jjyzxfqd = jjyzxfqd + jyzxfqd * (qdmdjcyq / pjjcqd);

                                    }

                                    if (qdmdjcyq < 0) //与惩罚建立记忆联系做为惩罚的强度加

                                    {

                                        jyzxfqd = jyzxfqd + jyzxfqd * (qdmdjcyq / pjjcqd); //主的兴奋强度;

                                        cjyzxfqd = cjyzxfqd + jyzxfqd * (qdmdjcyq / pjjcqd);

                                    }

 

                                    zsk = 8;

                                    lingshilabel = xfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                    putfun(lingshilabel, jyzxfqd, zsk1, fd);

                                    lingshilabel = jxfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                    putfun(lingshilabel, jjyzxfqd, zsk1, fd);

                                    lingshilabel = cxfrecordnumber - 78 + 67 + (label - 1) * 3 + 2;

                                    putfun(lingshilabel, cjyzxfqd, zsk1, fd);

                                    xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                    xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                }

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                jyzxfqdlabel = 25;

                                xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel, qdjlrecordnumber, jyzjcxfqd);

 

                                if (jyzxfqd >= 25) //易化皮质对应的基本记忆柱群。

                                {

                                    zsk1 = 8;

                                    lingshilabel = xfrecordnumber - 78 + 87;

                                    getfun(lingshilabel, ref xfrecordnumber, zsk1, fd);

                                    jyzxfqd = jyzxfqd / 3;

                                    zjjyzxfqd = jyzxfqd;

                                    zsk1 = 5;

                                    jyzxfqdlabel = 25;

                                    cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                    xfrecordnumber = xfrecordnumber + zrecordnumber;

                                    jyzxfqd = zjjyzxfqd;

                                    zsk1 = 6;

                                    jyzxfqdlabel = 10;

                                    cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                }

 

                                break;

                            // xfby

                            case 5:

                                zsk1 = 8;

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3;

                                int tcxftime = 0;

                                getfun(lingshilabel, ref tcxftime, zsk1, fd);

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 1;

                                int tcxfds = 0;

                                getfun(lingshilabel, ref tcxfds, zsk1, fd);

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                getfun(lingshilabel, ref tcxfqda, zsk1, fd);

                                int ztqdjyz = 10;

                                if (tcxfqda > ztqdjyz)

                                {

                                    //兴奋到一定强度后传入状态中枢,限制传入数目;

                                    int crztzsqd = tcxfqda / 3;

                                    zsk1 = 8;

                                    lingshilabel = xfrecordnumber - 78 + 87;

                                    int ztzsrecordnumber = 0;

                                    getfun(lingshilabel, ref ztzsrecordnumber, zsk1, fd);

                                    zsk1 = 4;

                                    jyzxfqdlabel = 25;

                                    cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

                                }

 

                                jyzxfqdlabel = 25;

                                //对强度中枢的兴奋

                                zsk1 = 8;

                                lingshilabel = xfrecordnumber - 78 + 86;

                                int xfqdzsrecordnumber = 0;

                                getfun(lingshilabel, ref xfqdzsrecordnumber, zsk1, fd);

                                xfqdrecordnumber = tcxfqda / 2;

                                zsk1 = 5;

                                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

 

                                //传出兴奋及记忆兴奋。传出到的记忆柱,分易兴奋的与不易兴奋的。;

                                if ((xfrecordnumber / zrecordnumber) % 2 == 0)

                                {

                                    jyzxfqdlabel = 10;

                                }

                                else

                                {

                                    jyzxfqdlabel = 25;

                                }

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel, qdjlrecordnumber, jyzjcxfqd);

                                break;

 

                            //xfy

                            case 6:

                                zsk1 = 8;

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3;

                                tcxftime = 0;

                                getfun(lingshilabel, ref tcxftime, zsk1, fd);

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 1;

                                tcxfds = 0;

                                getfun(lingshilabel, ref tcxfds, zsk1, fd);

                                lingshilabel = xfrecordnumber - 78 + 67 + (qlabel - 1) * 3 + 2;

                                getfun(lingshilabel, ref tcxfqda, zsk1, fd);

 

                                //传出到强度中枢;

                                zsk1 = 6;

                                jyzxfqdlabel = 25;

                                //对强度中枢的兴奋

                                int zsk2 = 8;

                                lingshilabel = xfrecordnumber - 78 + 86;

                                xfqdrecordnumber = tcxfqda / 2;

                                xfqdzsrecordnumber = 0;

                                getfun(lingshilabel, ref xfqdzsrecordnumber, zsk2, fd);

                                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

 

                                int yzyqd = tcxfqda * 2 / 3;

                                int yzxfqdrecordnumber = yzyqd; //易兴奋的对不易兴奋的易化

                                int yzxfrecordnumber = xfrecordnumber - 9600;

                                jyzxfqdlabel = 10;

                                zsk1 = 6;

                                cjcr(qlabelrecordnumber, xfrecordnumber, xfqdrecordnumber, zqtime, qzqtime, label, jyzxfqdlabel);

 

                                //传出兴奋;

                                jyzxfqdlabel = 10;

                                xfjy(jxfrecordnumber, qlabel, subjyzrecordnumber, qzqtime, zrecordnumber, zqtime);

                                xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel, qdjlrecordnumber, jyzjcxfqd);

                                break;

                            case 9:

                                // (9 //qdzs);

                                //每个感觉中枢的不易兴奋的都有对应的强度中枢,由强度中枢来兴奋奖惩中枢。;

                                //以平均兴奋强度作为标准兴奋强度,来计算;

                                //顺序获得强度展示框的记录。;

                                //传出到奖惩中枢及其联络区。;

                                if ((xfrecordnumber / zrecordnumber) % 2 == 0)

                                {

                                    jyzxfqdlabel = 25;

                                }

                                else

                                {

                                    jyzxfqdlabel = 10;

                                }

                                xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel, qdjlrecordnumber, jyzjcxfqd);

 

                                //z = 1表示传出的是根据记忆柱的兴奋强度传出。传出到其联络区;

                                if ((xfrecordnumber / zrecordnumber) % 2 == 0)

                                {

                                    jyzxfqdlabel = 25;

                                }

                                else

                                {

                                    jyzxfqdlabel = 10;

                                }

                                z = 1;

                                xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel, qdjlrecordnumber, jyzjcxfqd);

                                break;                          

                        }

                    }

                m8zsk: ;

                }

//奖惩部分;

//奖惩预期。主注意目的对象的动力预期不一定准确,关键是行为能与环境相适应就可以了,与环境相适应的动力预期,是长期的奖惩学习获得的。目的行为能带来什么,这便是目的行为的动力。设置了这些基本规则,通过文化学习,形成与规则和环境相适应的认知过程及习惯。;

 

//奖惩预期。1获得兴奋的奖惩记忆柱13,2获得奖惩预期记忆柱13,3计算获得奖惩;

//1获得兴奋的奖惩记忆柱;

 

//主注意对象的奖惩预期大于目的对象的20%开始获得新的目的对象;

//奖惩预期。1获得兴奋的奖惩记忆柱13,2获得奖惩预期记忆柱13,3计算获得奖惩;

//1获得兴奋的奖惩记忆柱;

int zsk3=13;

lingshilabel=labelrecordnumber;

getfun( lingshilabel, ref labelnumber, zsk3, fd);

for (int recornumber = 1; recornumber <= labelnumber; recornumber++)

{

    //,计算展示框

    lingshilabel=labelrecordnumber+recordnumber;

    getfun( lingshilabel, ref xfrecordnumber , zsk1, fd);

    //兴奋获得的记忆柱,计算传出兴奋xfcc (, 对奖惩预期的影响等到下一兴奋周期。);

    z = 1; //表示传出到奖惩预期中枢);

    if ((xfrecordnumber/ zrecordnumber) %2 == 0)

    {

        jyzxfqdlabel = 25;

    }

    else

    {

        jyzxfqdlabel = 10;

    }

    xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel , qdjlrecordnumber, jyzjcxfqd);

    z = 0; //传到奖惩预期中枢结束);

}

 

//2获得兴奋的奖惩预期记忆柱;

zsk1=12;

lingshilabel=labelrecordnumber;

getfun( lingshilabel, ref labelnumber, zsk1, fd);

for (int recornumber = 1; recornumber <= labelnumber; recornumber++)

{

    //传出到它的强度中枢9586//还要记入展示框。在cdtcsub中的cjcr中就记入了。;

    zsk1=8;

    lingshilabel=xfrecordnumber-78+67+(qlabel-1)*3+2;

    getfun( lingshilabel, ref tcxfqda, zsk1, fd);

    lingshilabel=xfrecordnumber-78+86;

    int cdtc=0;

    getfun( lingshilabel, ref cdtc, zsk1, fd);

    zsk1 = 7;

    if  ((xfrecordnumber/ zrecordnumber) % 2 == 0)

    {

        jyzxfqdlabel = 25;

    }

    else

    {

        jyzxfqdlabel = 10;

    }

    int tccrqd = tcxfqda;

    cdtcsub(cdtc,tccrqd, zrecordnumber, subzrecordnumber, qzqtime, label, zsk,qlabelrecordnumber,zqtime, jyzxfqdlabel,tcxfyz);

 

    lingshilabel=labelrecordnumber+recordnumber;

    getfun( lingshilabel, ref xfrecordnumber  , zsk1, fd);

    //,计算展示框

    //兴奋获得的记忆柱,计算传出兴奋xfcc (, 对奖惩预期的影响等到下一兴奋周期。);

    if ((xfrecordnumber/ zrecordnumber) % 2 == 0)

    {

        jyzxfqdlabel = 25;

    }

    else

    {

        jyzxfqdlabel = 10;

    }

    xfcc(xfrecordnumber, qlabel, subzrecordnumber, qzqtime, zrecordnumber, zqtime, zsk, label, z, jyzxfqdlabel , qdjlrecordnumber, jyzjcxfqd);

}

 

 

                int[] yqdyqjs = new int[10];int label30=0;

                int mdjclabel=0;

                int jclabel=0;

                int dqlabel=0;

                int[] qdyqjs =new int[10];

                int[] ycfqdyqjs = new int[10];

                zsk1=7;int yaacyqjs=0;

                getfun( labelrecordnumber, ref labelnumber, zsk1, fd);

                for (int recornumber = 1; recornumber <= labelnumber; recornumber++)

                {

                    lingshilabel=labelrecordnumber+recordnumber;

                    getfun( lingshilabel, ref xfrecordnumber  , zsk1, fd);

                    //,计算展示框

                    //先获得是第几个记忆柱,然后是计算奖惩预期值;

                    //获得是第几个记忆柱.计算的是不易兴奋的记忆柱的兴奋

                    zsk1=8;

                    lingshilabel=xfrecordnumber-78+75;

                    int yqqdjszlabel=0;

                    getfun( lingshilabel, ref yqqdjszlabel, zsk1, fd);

                    lingshilabel=xfrecordnumber-78 + 67 + (qlabel -1) * 3+2;

                    int yqqdjs=0;

                    getfun( lingshilabel, ref yqqdjs, zsk1, fd);

                    int cf= yqqdjszlabel/100;

                    int yu= (yqqdjszlabel-cf*100)/10;

                    int anumber= yqqdjszlabel%10;

                    if (yu==1)

                    {

                        if ( cf==1)

                        {

                            qdyqjs[anumber]=    yqqdjs* anumber;    //随强度增加乘以anumber

                        }

                        if (cf==2)

                        {

                              ycfqdyqjs [anumber]=yqqdjs* anumber; 

                        }

                        yaacyqjs= yaacyqjs+ yqdyqjs[anumber]- ycfqdyqjs [anumber];

                    }

                }

                yaacyqjs = yaacyqjs/9 ;

 

                qdmdjcyq = yaacyqjs; //主注意目的对象及主注意对象的动力预期值和也作为主注意目的对象的动力预期值

                int ajctcxfqda =  yaacyqjs;

                int qajctcxfqda=  qyaacyqjs;

                //逃避惩罚,失去奖赏;

                //ajctcxfqda (奖惩的值);

                //qajctcxfqda (上一次奖惩的值);

                int qzjajctcxfqda=zjajctcxfqda;

                zjajctcxfqda = ajctcxfqda - qajctcxfqda; //奖惩的增加值;

                //qzjajctcxfqda (//上一次奖惩的增加值);

 

 

                //当动力变化较大时说明对象的动力预期还没有稳定下来,而较小时,可能稳定下来了。;

                // jcjslabel动力变化较小,平稳,jcjslabel20动力变化较大,jcjslabel30主注意目的对象可能开始确定的标志。兴奋平稳,兴奋剧烈变化,确定主注意目的对象。都要这三个参数。动力增加与减少的情况

                    if (ajctcxfqda > qajctcxfqda)  //动力增加的情况

                    {

                        if (qajctcxfqda * 1.10> ajctcxfqda)

                        {

                            if (jcjslabel>0) //说明从动力剧烈变化到平稳变化后,动力仍平稳变化,主注意目的对象开始确定

                            {

                                jcjslabel= jcjslabel+1;

                                jcjslabel20=0 ;

                            }

                            if (jcjslabel20>0) //说明从动力剧烈变化到首次平稳变化,主注意目的对象开始确定

                            {

                                if (jcjslabel20>=3)

                                {

                                    jcjslabel30=1 ;

                                }

                                jcjslabel20=0 ;

                            }

                            // qajctcxfqda (* 1.20> ajctcxfqda说明动力变化较小,注意对象所带来的动力变化从较大到相对稳定,这时的动力应是对象的动力。);

 

                            jcjslabel = 1 + jcjslabel; //jcjslabel表示动力变化小于百分之20

                        }

 

                        if (qzjajctcxfqda * 1.10<= zjajctcxfqda)

                        {

                            jcjslabel30=0;

                            //说明动力变化太大;

                            if (jcjslabel==0) //前一动力也剧烈变化

                            {

                                jcjslabel20=jcjslabel20+1;

                            }

 

                            if (jcjslabel>0) //从动力平衡到动力剧烈变化

                            {

                                jcjslabel = 0;

                                jcjslabel20= jcjslabel20+1 ;

                                int jcqdmdjcyq= qzjajctcxfqda; //(记录下目的对象的前一奖惩预期值)

                            }

                        }

                    }

 

                    if (ajctcxfqda < qajctcxfqda) //动力减少的情况

                    {

                        if (qajctcxfqda> ajctcxfqda * 1.20)

                        {

                            if (jcjslabel>0) //说明从动力剧烈变化到平稳变化后,动力仍平稳变化,主注意目的对象开始确定

                            {

                                jcjslabel= jcjslabel+1;

                                jcjslabel20=0 ;

                            }

                        if (jcjslabel20>0) //说明从动力剧烈变化到首次平稳变化,主注意目的对象开始确定

                        {

                            if (jcjslabel20>=3)

                            {

                                jcjslabel30=1 ;

                            }

                            jcjslabel20=0 ;

                        }

                        // qajctcxfqda (* 1.20> ajctcxfqda说明动力变化较小,注意对象所带来的动力变化从较大到相对稳定,这时的动力应是对象的动力。);

 

                        jcjslabel = 1 + jcjslabel; //jcjslabel表示动力变化小于百分之20

 

 

                        if (qajctcxfqda <= ajctcxfqda* 1.20)

                        {

                            jcjslabel30=0;

                            //说明动力变化太大;

                            if (jcjslabel==0) //前一动力也剧烈变化

                            {

                                jcjslabel20=jcjslabel20+1;

                            }

 

                            if (jcjslabel>0) //从动力平衡到动力剧烈变化

                            {

                                jcjslabel = 0;

                                jcjslabel20= jcjslabel20+1 ;

                                int jcqdmdjcyq= qajctcxfqda; //(目的可能改变时,记录下目的对象的前一奖惩预期值)

                             }

                        }

                    }

                /*

                if (jcjslabel30== >3&&ajctcxfqda /jcqdmdjcyq >1.30) //表示动力稳定超过3个周期,主注意目的对象可以确定了。

                {

                zsk = 13;

                jcyqzj = ajctcxfqda - jcqdmdjcyq //奖惩预期增加的值。对象的动力稳定后,再计算对象所带来的动力增加值;

                //这个增加值对应兴奋值相似的奖惩预期中枢的不易及易的记忆柱。;

                if (jcyqzj> == 0)

                {

                xfrecordnumber = jsjyzrecordnumber;

                }

                if (jcyqzj<0)

                {

                xfrecordnumber = cfjyzrecordnumber;

                }

                qdzh(ref int jcyqzj, ref int xfrecordnumber, ref int qdjlrecordnumber, ref int jyzjcxfqd);

 

                for (number = 1; number <= 8; number++)

                {

                zhongjie = (opcheightn + zhongjie) * 10;

                opcheightn = int(qdjlrecordnumber / (math.pow(10, (8 - number)))) - zhongjie; //顺序获得8个表示强弱的数字

 

                cdtcsub(cdtc,tccrqd, zrecordnumber, subzrecordnumber, qzqtime, label, zsk,qlabelrecordnumber,zqtime, jyzxfqdlabel,tcxfyz);

                }

                zhongjie = 0;

 

                qdzh(jcyqzj, xfrecordnumber + 9600, qdjlrecordnumber, jyzjcxfqd);

                for (number = 1; number <= 8; number++)

                {

                zhongjie = (opcheightn + zhongjie) * 10;

                opcheightn = int(qdjlrecordnumber / (math.pow(10, (8 - number)))) - zhongjie; //顺序获得8个表示强弱的数字

 

                cdtcsub(cdtc,tccrqd, zrecordnumber, subzrecordnumber, qzqtime, label, zsk,qlabelrecordnumber,zqtime, jyzxfqdlabel,tcxfyz);

                }

                zhongjie = 0;

                }

 

                if (jcjslabel == >3)

                {

                jcqdmdjcyq = zjajctcxfqda //目的对象的动力预期值发生改变持续到下一周期。;

                }

 

 

                acyqjs = yaacyqjs - qyaacyqjs //动力预期的增加值;

                qdjcyq = yaacyqjs //动力预期值;

 

                //当动力变化较大时说明对象的动力预期还没有稳定下来,而较小时,可能稳定下来了。;

                if (acyqjs>qacyqjs)

                {

                if (qacyqjs * 1.20>acyqjs)

                {

                //qacyqjs (* 1.20>acyqjs说明动力变化较小,注意对象所带来的动力变化从较大到相对稳定,这时的动力应是对象的动力。);

                }

                jslabel = 1 + jslabel;

                }

                if (qacyqjs * 1.20< == acyqjs)

                {

                //说明动力变化太大;

                }

                if (jslabel>0)

                {

                jslabel = 0;

                }

                }

 

                if (acyqjs<qacyqjs)

                {

                if (qacyqjs<acyqjs * 1.20)

                {

                jslabel = 1 + jslabel;

                }

                if (qacyqjs> == acyqjs * 1.20 then//说明动力变化太大)

                {

                if (jslabel>0)

                {

                jslabel = 0;

                }

                }

                }

                if (&& ajctcxfqda /jcqdmdjcyq >1.30) //表示动力稳定超过2个周期,主注意目的对象可以确定了。

                */

                int jslabel=jcjslabel;int[] jclabelm=new int[20];

                if(jcjslabel30==1&& jslabel>=3) //jcjslabel30==1yaacyqjs>qdmdjcyq*1.30是一定的。

                {

                //表示目的对象开始改变。 label30 = 0表示前目的对象没改变。 == 1表示已经改变。;

                if (label30 == 0)

                {

                    mdjclabel = 1; //目的奖惩标志mdjclabel,开始改变前目的对象。;

                    label30 = 1;

                }

                else

                {

                if (label30 == 1)

                {

                    mdjclabel = mdjclabel + 1; //目的奖惩标志mdjclabel;

                }

                    }

                }

                //现在的主注意对象记入前主注意目的对象的展示框

                jclabelm[mdjclabel] = jclabelm[mdjclabel -1] + labelnumber;  //为了今后确定主注意目的对象;

                if (mdjclabel >= 1)

                {

                    zsk=3;

                    getfun (labelrecordnumber, ref labelnumber,zsk,fd);

                    for (recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

                    {

                        //,计算展示框

                        zsk=3;

                        lingshilabel= labelrecordnumber+recordnumber ;

                        getfun (lingshilabel, ref xfrecordnumber ,zsk,fd);

                        //,计算展示框

                        zsk=8;

                        lingshilabel= xfrecordnumber-78+87; //主注意目的对象是状态中枢的,87与状态中枢的记忆柱相对应。

                        getfun (lingshilabel, ref xfrecordnumber,zsk,fd);

                        xfrecordnumber= xfrecordnumber+78-87;

                        zsk=10;

                        lingshilabel=1 + (recordnumber);

                        int rec=1;

                        putfun  (rec, lingshilabel,zsk,fd);

                        putfun  (lingshilabel, xfrecordnumber,zsk,fd);

                    }

                }

                if (mdjclabel == 7)

                {

                    //主注意目的对象正式确定。注意对象的动力预期稳定,而且新的总动力预期大于老的总动力预期; label30=0,表示主注意目的对象随后会稳定。

                    for (mdjclabel = 2; mdjclabel <= 6 ; mdjclabel++)//保证选取的主注意目的对象的正确性。

                    {

                         dqlabel = 5;

 

                        zsk=1;

                        putfun ( qlabelrecordnumber, dqlabel,zsk,fd);

                        for (int dq = 1; dq <= dqlabel; dq++)

                        {

                            zsk=10;

                            lingshilabel=mdjclabel+ dq;

                            int mddx=0;

                            getfun (lingshilabel, ref mddx,zsk,fd);

                            zsk=1;

                            lingshilabel= dq + qlabelrecordnumber;

                            putfun ( lingshilabel, mddx,zsk,fd); //记入主注意目的展示框

                        }

                        label30=0 ;

                        zjajctcxfqda= qdmdjcyq; //主注意目的对象的动力大小

                        }

                    }

                    else

                    {

                        //主注意目的对象还是以前的主注意目的对象

                        zsk=1;

                        int recordnumberlabel=0;

                        getfun (labelrecordnumber, ref recordnumberlabel,zsk,fd);

                        putfun ( qlabelrecordnumber, recordnumberlabel,zsk,fd);

                        for (recordnumber = 1; recordnumber <= recordnumberlabel; recordnumber++)

                        {

                            zsk=1;

                            lingshilabel=labelrecordnumber+recordnumber;

                            getfun (lingshilabel, ref xfrecordnumber,zsk,fd);

                            lingshilabel=qlabelrecordnumber + recordnumber;

                            putfun ( lingshilabel , xfrecordnumber,zsk,fd);

                        }

                }

 

                }

                /*

                if (jslabel == >3&& yaacyqjs >qdmdjcyq * 1.30)

                {

                qdjcyq = yaacyqjs;

 

                mdjclabel = mdjclabel + 1 //目的奖惩标志mdjclabel;

                qmdjrzsk(mdjclabel, labelnumber, labelrecordnumber);

                }

 

                if (jslabel == >3)

                {

                qdmdjcyq = yaacyqjs //目的对象的动力预期值发生改变持续到下一周期。;

                label30 = 0;

                }

 

                qmdjrzsk(ref mdjclabel,ref labelnumber,ref labelrecordnumber) //将前目的记入展示框。;

                if (mdjclabel>1)

                {

                zsk=10;

                int getlabel=1;

                getfun( getlabel, ref labelnumber1,zsk,fd)

                labelnumber = labelnumber + labelnumber1;

                putfun ( rec, ref labelnumber,zsk,fd);

                for (recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

                {

                //,计算展示框

                zsk=3; //,计算展示框

                lingshilabel=labelrecordnumber+recordnumber;

                getfun (reflingshilabel, ref xfrecordnumber  ,zsk,fd);

                zsk=8;

                lingshilabel=xfrecordnumber-78+87;

                getfun (reflingshilabel, ref xfrecordnumber  ,zsk,fd);

                lingshilabel=1 + (recordnumber);

                putfun ( lingshilabel, xfrecordnumber,zsk,fd);

                }

                }*/

 

 

 

                    //获得主注意对象

                    int[,] zzydx = new int[26,9];

                   

                    int[,] qdzzydx = new int[26,9];

                    int[] zss = new int[31];

                    int[] zsqd = new int[31];

                     zsk=11;

                    labelnumber=0;

                   

                    getfun (qlabelrecordnumber, ref labelnumber,zsk,fd);

                    for ( recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

                    {

                    lingshilabel=qlabelrecordnumber +recordnumber;

                    getfun (lingshilabel, ref xfrecordnumber  ,zsk,fd);

                    //,计算展示框

                    int jyzxfqdrecordnumber = xfrecordnumber -78 + 67 + (qlabel -1) * 3+2; //获得记忆柱的前兴奋强

                    zsk=8;

                    getfun (jyzxfqdrecordnumber,ref jyzxfqd,zsk,fd);

                    zsk=8;

                    lingshilabel= xfrecordnumber-78+76 ; //空间标志kjbz

                    int kjbz=0;

                    getfun (lingshilabel, ref kjbz,zsk,fd);

                    int n = kjbz/10; //n是中枢,m在一个中枢的clengthN位置

                    int m = kjbz %10; //获得空间标志的个位整数

 

                    if (zzydx[n, m] <1)

                    {

                    //表示记忆柱所在空间,还没有记录兴奋;

                    zss[n] = (zss[n]) + 1; //一个中枢所选择出来的记忆柱数

                    zsqd[n] = zsqd[n] + jyzxfqd; //中枢的兴奋强度

                    qdzzydx[n, m] = jyzxfqd; //clengthN位置的兴奋强度

                    zzydx[n, m] = xfrecordnumber;

                    }

                       

                    //如果zzydx(n, m) >1,表示记忆柱所在空间,已有记录兴奋。这时需要比较。;

                    if (jyzxfqd>qdzzydx[n, m]) //这种情况是clengthN位置几个记忆柱的大小比较

                    {

                    //需要改写四个记录参数;

                    zss[n] = zss[n]; //一个clengthN位置只能有一个记忆柱被选择出来

                    zsqd[n] = zsqd[n] + jyzxfqd - qdzzydx[n, m];

                    qdzzydx[n, m] = jyzxfqd;

                    zzydx[n, m] = xfrecordnumber;

                    }

                    }

 

                    //获得主注意对象

                   

                    int zzyqd;

                    int[] qdzzydxxz = new int[6];

                    for (int n = 1; n <= 30; n++)

                    {

                        if (zss[n] >5)

                        {

                            //一个中枢必须有5个以上的被选择出来的记忆柱,才能在它那里产生主注意对象。;

                            xz = 1; //表示可能会有新的主注意对象会被选择出来。;

                            if (zzydxpjyzqd < zsqd[n] / zss[n])

                            {

                                zzydxpjyzqd = zsqd[n] / zss[n]; //选择出来的新的主注意对象所在的中枢。;

                                recordnumber = 0;

                                for (int m = 1; m <= 9 ; m++) //获得主注意对象

                                {

                                    if (zzydx[n, m] >1)

                                    {

                                        //表示zzydx[n, m) 是选择出来的,否则就为空。记入展示框。也可能有的clengthN位置没有记忆柱被兴奋,就小于1;

                                        recordnumber = (recordnumber) + 1;

                                        zsk=3;

                                        lingshilabel= qlabelrecordnumber + recordnumber;

                                        int lingshilabel1= zzydx[n, m];

                                        putfun ( lingshilabel, lingshilabel1,zsk,fd);

                                    }

                                }

                                putfun ( qlabelrecordnumber, recordnumber,zsk,fd);

                            }

                        }

                    }

                   

                    //如果没能选择出主注意对象,就是原来的主注意对象。;

                    if ( xz == 1)

                    {

                        //如果没能选择出主注意对象,就是原来的主注意对象。;

                        zsk=3;

                        getfun (labelrecordnumber, ref labelnumber,zsk,fd);

                        putfun ( qlabelrecordnumber,  labelnumber,zsk,fd);

                        for (recordnumber = 1; recordnumber <= labelnumber; recordnumber++)

                        {

                        lingshilabel=labelrecordnumber+recordnumber;

                            int labelrecordnumber1=0;

                        getfun (lingshilabel, ref labelrecordnumber1,zsk,fd);

                        lingshilabel=qlabelrecordnumber + recordnumber;

                        putfun ( lingshilabel, labelrecordnumber1,zsk,fd);

                    }

                    }

 

 

 

                //奖惩中枢兴奋强度差的计算;

                int jctcxfqda1 = 0;

                int jctcxfqda2 = 0;

                ajctcxfqda = 0;

 

                goto restart;                     

                }

 

        }

    }

 


路过

雷人

握手

鲜花

鸡蛋

全部作者的其他最新日志

评论 (0 个评论)

facelist doodle 涂鸦板

您需要登录后才可以评论 登录 | 注册

小黑屋|手机版|Archiver|生物行[生物导航网] ( 沪ICP备05001519号 )

GMT+8, 2024-3-28 18:50 , Processed in 0.074591 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

返回顶部