简单的遗传算法,计算函数最值.functionga_main()%遗传算法程序%n--种群规模%ger--迭代次数%pc---交叉概率%pm--变异概率%v--初始种群(规模为n)%f--目标函数值%fit--适应度向量%vx--最优适应度值向量%vmfit--平均适应度值向量clearall;closeall;clc;%清屏tic;%计时器开始计时n=20;ger=100;pc=0.65;pm=0.05;%初始化参数%以上为经验值,可以更改。
%生成初始种群v=init_population(n,22);%得到初始种群,22串长,生成20*22的0-1矩阵[N,L]=size(v);%得到初始规模行,列disp(sprintf('Numberofgenerations:%d',ger));disp(sprintf('Populationsize:%d',N));disp(sprintf('Crossoverprobability:%.3f',pc));disp(sprintf('Mutationprobability:%.3f',pm));%sprintf可以控制输出格式%待优化问题xmin=0;xmax=9;%变量X范围f='x+10*sin(x.*5)+7*cos(x.*4)';%计算适应度,并画出初始种群图形x=decode(v(:,1:22),xmin,xmax);"位二进制换成十进制,%冒号表示对所有行进行操作。
fit=eval(f);%eval转化成数值型的%计算适应度figure(1);%打开第一个窗口fplot(f,[xmin,xmax]);%隐函数画图gridon;holdon;plot(x,fit,'k*');%作图,画初始种群的适应度图像title('(a)染色体的初始位置');%标题xlabel('x');ylabel('f(x)');%标记轴%迭代前的初始化vmfit=[];%平均适应度vx=[];%最优适应度it=1;%迭代计数器%开始进化whileit<=ger%迭代次数0代%Reproduction(Bi-classistSelection)vtemp=roulette(v,fit);%复制算子%Crossoverv=crossover(vtemp,pc);%交叉算子%Mutation变异算子M=rand(N,L)<=pm;%这里的作用找到比0.05小的分量%M(1,:)=zeros(1,L);v=v-2.*(v.*M)+M;%两个0-1矩阵相乘后M是1的地方V就不变,再乘以2.NICE!!确实好!!!把M中为1的位置上的地方的值变反%这里是点乘%变异%Resultsx=decode(v(:,1:22),xmin,xmax);%解码,求目标函数值fit=eval(f);%计算数值[sol,indb]=max(fit);%每次迭代中最优目标函数值,包括位置v(1,:)=v(indb,:);%用最大值代替fit_mean=mean(fit);%每次迭代中目标函数值的平均值。
mean求均值vx=[vxsol];%最优适应度值vmfit=[vmfitfit_mean];%适应度均值it=it+1;%迭代次数计数器增加end
2023/7/1 23:41:32 4KB 遗传算法
1
深度学习之卷积神经收集CNN做手写体识另外VS代码。
反对于linux版本以及VS2012版本。
tiny-cnn:AC++11implementationofconvolutionalneuralnetworks========tiny-cnnisaC++11implementationofconvolutionalneuralnetworks.designprinciple-----*fast,withoutGPU98.8%accuracyonMNISTin13minutestraining(@Corei7-3520M)*headeronly,policy-baseddesignsupportednetworks-----###layer-types*fully-connectedlayer*convolutionallayer*averagepoolinglayer###activationfunctions*tanh*sigmoid*rectifiedlinear*identity###lossfunctions*cross-entropy*mean-squared-error###optimizationalgorithm*stochasticgradientdescent(with/withoutL2normalization)*stochasticgradientlevenbergmarquardtdependencies-----*boostC++library*IntelTBBsamplecode------```cpp#include"tiny_cnn.h"usingnamespacetiny_cnn;//specifyloss-functionandoptimization-algorithmtypedefnetworkCNN;//tanh,32x32input,5x5window,1-6feature-mapsconvolutionconvolutional_layerC1(32,32,5,1,6);//tanh,28x28input,6feature-maps,2x2subsamplingaverage_pooling_layerS2(28,28,6,2);//fully-connectedlayersfully_connected_layerF3(14*14*6,120);fully_connected_layerF4(120,10);//connectallCNNmynet;mynet.add(&C1);mynet.add(&S2);mynet.add(&F3);mynet.add(&F4);assert(mynet.in_dim()==32*32);assert(mynet.out_dim()==10);```moresample,readmain.cppbuildsampleprogram------###gcc(4.6~)withouttbb./wafconfigure--BOOST_ROOT=your-boost-root./wafbuildwithtbb./wafconfigure--TBB--TBB_ROOT=your-tbb-root--BOOST_ROOT=your-boost-root./wafbuildwithtbbandSSE/AVX./wafconfigure--AVX--TBB--TBB_ROOT=your-tbb-root--BOOST_ROOT=your-boost-root./wafbuild./wafconfigure--SSE--TBB--TBB_ROOT=your-tbb-root--BOOST_ROOT=your-boost-root./wafbuildoreditinlude/co
2023/4/7 20:45:08 10.29MB 深度学习 卷积神经网络 CNN VS
1
收缩包里有三个matlab法度圭表标准,分别是K-mean聚类、LVQ聚类以及稠浊高斯聚类,数据为两类二维高斯漫衍的随机点。
法度圭表标准揭示了三种聚类算法的底子使用方式。
算法原理能够参考周志华《机械学习》的第九章聚类。
2023/3/24 13:10:24 2KB matlab K-mean LVQ mixture
1
均方误差(mean-squareerror,MSE)是反映估计量与被估计量之间差异程度的一种度量。
设t是根据子样确定的总体参数θ的一个估计量,(θ-t)2的数学期望,称为估计量t的均方误差。
它等于σ2+b2,其中σ2与b分别是t的方差与偏倚。
psnr是“PeakSignaltoNoiseRatio”的缩写,即峰值信噪比,是一种评价图像的客观标准,它具有局限性,一般是用于最大值信号和背景乐音之间的一个工程项目。
2023/3/12 17:25:57 1.3MB 图像质量评价
1
AUnifiedApproachtoSalientObjectDetectionviaLowRankMatrixRecovery这篇论文的代码,经测试能够运转。
通过此程序,还可以很好的了解mean-shift算法的使用。
2023/3/8 12:49:12 5.41MB 显著性 稀疏低秩 mean-shift
1
Win10X64下VS2017编译的X64位Caffe,静态编译,MT,无任何dll,无需VS运转库,支持Pythoncaffe.execlassification.execompute_image_mean.execonvert_cifar_data.execonvert_imageset.execonvert_mnist_data.execonvert_mnist_siamese_data.exedevice_query.exeextract_features.exefinetune_net.exenet_speed_benchmark.exetest_net.exetrain_net.exeupgrade_net_proto_binary.exeupgrade_net_proto_text.exeupgrade_solver_proto_text.exe
1
Publisher:PrenticeHallPTRPubDate:September15,2003ISBN:0-13-066946-6Pages:608Section2.7.TheSpectrumofanIdealSquareWaveSection2.8.FromtheFrequencyDomaintotheTimeDomainSection2.9.EffectofBandwidthonRiseTimeSection2.10.BandwidthandRiseTimeSection2.11.WhatDoes"Significant"Mean?Section2.12.BandwidthofRealSignalsSection2.13.BandwidthandClockFrequencySection2.14.BandwidthofaMeasurementSection2.15.BandwidthofaModelSection2.16.BandwidthofanInterconnectSection2.17.BottomLineChapter3.ImpedanceandElectricalModelsSection3.1.DescribingSignal-IntegritySolutionsinTermsofImpedanceSection3.2.WhatIsImpedance?Section3.3.Realvs.IdealCircuitElementsSection3.4.ImpedanceofanIdealResistorintheTimeDomainSection3.5.ImpedanceofanIdealCapacitorintheTimeDomainSection3.6.ImpedanceofanIdealInductorintheTimeDomainSection3.7.ImpedanceintheFrequencyDomainSection3.8.EquivalentElectricalCircuitModelsSection3.9.CircuitTheoryandSPICESection3.10.IntroductiontoModelingSection3.11.TheBottomLineChapter4.ThePhysicalBasisofResistanceSection4.1.TranslatingPhysicalDesignintoElectricalPerformanceSection4.2.TheOnlyGoodApproximationfortheResistanceofInterconnectsSection4.3.BulkResistivitySection4.4.ResistanceperLengthSection4.5.SheetResistanceSection4.6.TheBottomLineChapter5.ThePhysicalBasisofCapacitanceSection5.1.CurrentFlowinCapacitorsSection5.2.TheCapacitanceofaSphereSection5.3.ParallelPlateApproximationSection5.4.DielectricConstantSection5.5.PowerandGroundPlanesandDecouplingCapacitanceSection5.6.CapacitanceperLengthSection5.7.2DFieldSolversSection5.8.EffectiveDielectricConstantSection5.9.TheBottomLineChapter6.ThePhysicalBasisofInductanceSection6.1.WhatIsInductance?Section6.2.InductancePrinciple#1:ThereAreCircularMagneti
2023/2/10 16:14:46 12.15MB Signal Integrity
1
由于目前大多数交互式Graph-Cut分割算法很难达到精确分割且实时交互的效果.对此,提出一种基于局部颜色模型的改进算法.该算法利用Mean-Shift预分割,建立基于局部颜色模型的交互式分割框架,并将像素级的Graph-Cut算法转化为基于区域的算法进行快速求解.预分割之后的区域保持了原有图像的结构,不只提高了采用局部颜色模型估计分布的准确性,而且基于区域Graph-Cut的算法明显降低了计算的复杂度.实验结果表明,改进后的算法不只保证了分割的精确性,而且还达到了实时交互.
1
clearall;closeall;fs=8e5;%抽样频率fm=20e3;%基带频率n=2*(6*fs/fm);final=(1/fs)*(n-1);fc=2e5;%载波频率t=0:1/fs:(final);Fn=fs/2;%耐奎斯特频率%用正弦波产生方波%==========================================twopi_fc_t=2*pi*fm*t;A=1;phi=0;x=A*cos(twopi_fc_t+phi);%方波am=1;x(x>0)=am;x(x<0)=-1;figure(1)subplot(321);plot(t,x);axis([02e-4-22]);title('基带信号');gridoncar=sin(2*pi*fc*t);%载波ask=x.*car;%载波调制subplot(322);plot(t,ask);axis([0200e-6-22]);title('PSK信号');gridon;%=====================================================vn=0.1;noise=vn*(randn(size(t)));%产生乐音subplot(323);plot(t,noise);gridon;title('乐音信号');axis([0.2e-3-11]);askn=(ask+noise);%调制后加噪subplot(324);plot(t,askn);axis([0200e-6-22]);title('加噪后信号');gridon;%带通滤波%======================================================================fBW=40e3;f=[0:3e3:4e5];w=2*pi*f/fs;z=exp(w*j);BW=2*pi*fBW/fs;a=.8547;%BW=2(1-a)/sqrt(a)p=(j^2*a^2);gain=.135;Hz=gain*(z+1).*(z-1)./(z.^2-(p));subplot(325);plot(f,abs(Hz));title('带通滤波器');gridon;Hz(Hz==0)=10^(8);%avoidlog(0)subplot(326);plot(f,20*log10(abs(Hz)));gridon;title('Receiver-3dBFilterResponse');axis([1e53e5-31]);%滤波器系数a=[100.7305];%[10p]b=[0.1350-0.135];%gain*[10-1]faskn=filter(b,a,askn);figure(2)subplot(321);plot(t,faskn);axis([0100e-6-22]);title('通过带通滤波后输出');gridon;cm=faskn.*car;%解调subplot(322);plot(t,cm);axis([0100e-6-22]);gridon;title('通过相乘器后输出');%低通滤波器%==================================================================p=0.72;gain1=0.14;%gain=(1-p)/2Hz1=gain1*(z+1)./(z-(p));subplot(323);Hz1(Hz1==0)=10^(-8);%avoidlog(0)plot(f,20*log10(abs(Hz1)));gridon;title('LPF-3dBresponse');axis([05e4-31]);%滤波器系数a1=[1-0.72];%(z-(p))b1=[0.140.14];%gain*[11]so=filter(b1,a1,cm);so=so*10;%addgainso=so-mean(so);%removesDCcomponentsubplot(324);
2016/5/8 20:09:29 589KB matlab PSK 调制与解调
1
共有七个完整算法%1.基于聚类的RBF网设计算法%一维输入,一维输出,逼近效果很好!SamNum=100;%总样本数TestSamNum=101;%测试样本数InDim=1;%样本输入维数ClusterNum=10;%隐节点数,即聚类样本数Overlap=1.0;%隐节点重叠系数%根据目标函数获得样本输入输出rand('state',sum(100*clock))NoiseVar=0.1;Noise=NoiseVar*randn(1,SamNum);SamIn=8*rand(1,SamNum)-4;SamOutNoNoise=1.1*(1-SamIn+2*SamIn.^2).*exp(-SamIn.^2/2);SamOut=SamOutNoNoise+Noise;TestSamIn=-4:0.08:4;TestSamOut=1.1*(1-TestSamIn+2*TestSamIn.^2).*exp(-TestSamIn.^2/2);figureholdongridplot(SamIn,SamOut,'k+')plot(TestSamIn,TestSamOut,'r--')xlabel('Inputx');ylabel('Outputy');Centers=SamIn(:,1:ClusterNum);NumberInClusters=zeros(ClusterNum,1);%各类中的样本数,初始化为零IndexInClusters=zeros(ClusterNum,SamNum);%各类所含样本的索引号while1,NumberInClusters=zeros(ClusterNum,1);%各类中的样本数,初始化为零IndexInClusters=zeros(ClusterNum,SamNum);%各类所含样本的索引号%按最小距离原则对所有样本进行分类fori=1:SamNumAllDistance=dist(Centers',SamIn(:,i));[MinDist,Pos]=min(AllDistance);NumberInClusters(Pos)=NumberInClusters(Pos)+1;IndexInClusters(Pos,NumberInClusters(Pos))=i;end%保存旧的聚类中心OldCenters=Centers;fori=1:ClusterNumIndex=IndexInClusters(i,1:NumberInClusters(i));Centers(:,i)=mean(SamIn(:,Index)')';end%判断新旧聚类中心能否一致,是则结束聚类EqualNum=sum(sum(Centers==OldCenters));ifEqualNum==InDim*ClusterNum,break,endend%计算各隐节点的扩展常数(宽度)AllDistances=dist(Centers',Centers);%计算隐节点数据中心间的距离(矩阵)Maximum=max(max(AllDistances));%找出其中最大的一个距离fori=1:ClusterNum%将对角线上的0替换为较大的值AllDistances(i,i)=Maximum+1;endSpreads=Overlap*min(AllDistances)';%以隐节点间的最小距离作为扩展常数%计算各隐节点的输出权值Distance=dist(Centers',SamIn);%计算各样本输入离各数据中心的距离SpreadsMat=repmat(Spreads,1,SamNum);HiddenUnitOut=radbas(Distance./SpreadsMat);%计算隐节点输出阵HiddenUnitOutEx=[HiddenUnitOut'ones(SamNum,1)]';%考虑偏移W2Ex=SamOut*pinv(HiddenUnitOutEx);%求广义输出权值W2=W2Ex(:,1:ClusterNum);%输出权值B2=W2Ex(:,ClusterNum+1)
2017/4/12 3:58:08 8KB rbf算法源程序
1
共 33 条记录 首页 上一页 下一页 尾页
在日常工作中,钉钉打卡成了我生活中不可或缺的一部分。然而,有时候这个看似简单的任务却给我带来了不少烦恼。 每天早晚,我总是得牢记打开钉钉应用,点击"工作台",再找到"考勤打卡"进行签到。有时候因为工作忙碌,会忘记打卡,导致考勤异常,影响当月的工作评价。而且,由于我使用的是苹果手机,有时候系统更新后,钉钉的某些功能会出现异常,使得打卡变得更加麻烦。 另外,我的家人使用的是安卓手机,他们也经常抱怨钉钉打卡的繁琐。尤其是对于那些不太熟悉手机操作的长辈来说,每次打卡都是一次挑战。他们总是担心自己会操作失误,导致打卡失败。 为了解决这些烦恼,我开始思考是否可以通过编写一个全自动化脚本来实现钉钉打卡。经过一段时间的摸索和学习,我终于成功编写出了一个适用于苹果和安卓系统的钉钉打卡脚本。
2024-04-09 15:03 15KB 钉钉 钉钉打卡