CCF CSP 202109-3 脉冲神经网络

本文深入探讨了2021年CCF CSP认证中的脉冲神经网络(SNN)主题,分析了其工作原理和模拟技术,同时结合图模型进行了解读。
摘要由CSDN通过智能技术生成
#include <iostream>
#include <cstring> 
using namespace std;
static unsigned long Next = 1;
//RAND_MAX assumed to be 32767
int myrand(void)  //题目中已给出的伪随机数生成函数 
{
	Next = Next * 1103515245 + 12345;
	return((unsigned)(Next/65536)%32768);
}

int N, S, P, T;
double Dt; //Delta_t 时间间隔 

//定义存储结构体,神经元和突触 
int rn;
struct neural{
	double v_pre, u_pre; //神经元内状态参数v和u的前一时间间隔整数倍的时刻,即前一记录时刻的状态 
	double v, u; //神经元内状态v和u为当前记录时刻的状态 
	double a, b, c, d; //神经元内的其他参数,常量 ,a和b是用来通过上一记录时刻计算此时记录时刻的状态所需要用到的参数 
					   //c和d是当该神经元某时刻受到所有脉冲之和大于或等于30时,用来再次重置v和u 
}NN[1000];

int r[1000]; //用来存储每个脉冲源的参数,即r 
double IK[1000][10000] = {0}; //记录突触的某个时刻出结点和延迟后时间 的突触传播的强度 ,即某个强度,什么时刻,到达某个出结点
								//又因为出结点的编号恰好与神经元对应,即到达的是某个编号的神经元 

struct edg{
	int from, to; //突触的入结点编号,出结点编号 
	double w;    //在该突触上传播的脉冲强度,虽然脉冲是神经元或脉冲源发射脉冲
				//但由于突触的方向是单向的,所以,可以只记录传播时的脉冲强度 
	in
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值