当前位置:三九宝宝网 → 宝宝百科 → 宝宝知识 → 正文

一种更简化而高效的粒子群优化算法

更新:05-12 整理:39baobao.com
字体:

[以学生为本、建构高效课堂——优化教学设计]课堂教学是展示教师魅力的主战场,是实现师生共同发展的场所,是落实新课程和提高教育教学质量的主阵地。如何以学生为本高效利用好45分钟,使师生花费最少的精力,取得最大的教学效...+阅读

针对基本粒子群优化(basic particle swarm optimization,简称bPSO)算法容易陷入局部极值、进化后期的收敛速度慢和精度低等缺点,采用简化粒子群优化方程和添加极值扰动算子两种策 略加以改进,提出了简化粒子群优化(simple particle swarm optimization,简称sPSO)算法、带极值扰动粒子群优化(extremum disturbed particle swarm optimization,简称tPSO)算法和基于二者的带极值扰动的简化粒子群优化(extremum disturbed and simple particle swarm optimization,简称tsPSO)算法.sPSO去掉了PSO进化方程的粒子速度项而使原来的二阶微分方程简化为一阶微分方程,仅由粒子位置控 制进化过程,避免了由粒子速度项引起的粒子发散而导致后期收敛变慢和精度低问题.tPSO增加极值扰动算子可以加快粒子跳出局部极值点而继续优化.对几个 经典测试函数进行实验的结果表明,sPSO能够极大地提高收敛速度和精度;tPSO能够有效摆脱局部极值点;以上两种策略相结合,tsPSO以更小的种群 数和进化世代数获得了非常好的优化效果,从而使得PSO算法更加实建议你在学术里面查询一些相关文档,对你写论文应该有帮助。

求A B间素数的优化算法

展开全部

我提供一种“伪素数”算法。

先用筛法筛出31622之内的素数,再判断A,B间各数能不能被31622之内的素数整除。在一定范围内(其实这个范围也很大了)这种方法是完全正确的。

参考程序:oibh7月基础版普及组月赛“天天写作业”的标程。

var

prime : array[1..3401] of integer;

n : integer;

a, b : longint;

sum : longint;

procedure pre_work;

const

num = 31622;

var

hash : array[1..num] of boolean;

i ,j : integer;

begin

fillchar(hash, sizeof(hash), true);

hash[1] := false;

for i := 2 to trunc(sqrt(num)) do

begin

if not hash[i] then continue;

j := i + i;

while j <= num do

begin

hash[j] := false;

inc(j, i);

end;

end;

for i := 2 to num do

if hash[i] then

begin

inc(n);

prime[n] := i;

end;

end;

procedure init;

begin

assign(input, 'homework.in');

reset(input);

assign(output, 'homework.out');

rewrite(output);

readln(a, b);

close(input);

end;

function judge(p: longint): boolean;

var

t, i : longint;

begin

t := trunc(sqrt(p));

for i := 1 to n do

if prime[i] > t then break

else if p mod prime[i] = 0 then

begin

judge := false;

exit;

end;

judge := true;

end;

procedure work;

var

i : longint;

begin

if a = 1 then a := 2;

for i := a to b do

if judge(i) then

inc(sum);

end;

procedure outit;

begin

writeln(sum);

close(output);

end;

begin

pre_work;

init;

work;

outit;

end.

求数独搜索算法的优化方法

我有个09年noip第4题,是个数独搜索题。很经典,发给你,自己去看。type rec=record x,n:integer; end; var a:array[1..81,1..3] of integer; c:array[1..27,0..9] of boolean; p:array[1..81] of rec; v,d:array[1..81] of integer; ans,time:longint; i,l:integer; function max(x,y:integer):integer; begin if x>y then exit(x) else exit(y); end; procedure qsort(l,r:integer); var i,j,k:integer; t:rec; begin i:=l;j:=r;k:=p[(i+j) div 2].x; repeat while p[i].xk do dec(j); if ij; if il then qsort(l,j); end; procedure init; var i,j,k,s:integer; begin assign(input,'sudoku.in');reset(input); assign(output,'sudoku.out');rewrite(output); for i:=1 to 9 do for j:=1 to 9 do begin k:=(i-1)*9+j; a[k,1]:=i; a[k,2]:=j+9; a[k,3]:=(i-1) div 3*3+(j-1) div 3+19; v[k]:=10-max(abs(i-5),abs(j-5)); end; fillchar(c,sizeof(c),true); for i:=1 to 81 do begin read(d[i]); c[a[i,1],d[i]]:=false; c[a[i,2],d[i]]:=false; c[a[i,3],d[i]]:=false; end; l:=0; for i:=1 to 81 do begin if d[i]=0 then begin inc(l);p[l].n:=i; s:=0; for j:=1 to 9 do begin if (c[a[i,1],j]) and (c[a[i,2],j]) and (c[a[i,3],j]) then inc(s); end; p[l].x:=s; end; end; qsort(1,l); end; procedure check; var i,t:integer; begin t:=0; for i:=1 to 81 do t:=t+d[i]*v[i]; if t>ans then ans:=t; end; procedure dfs(x:integer); var i,k:integer; begin if x>l then begin check; exit; end; inc(time); if time>6000000 then begin writeln(ans); close(input);close(output); halt; end; k:=p[x].n; for i:=1 to 9 do begin if (c[a[k,1],i]) and (c[a[k,2],i]) and (c[a[k,3],i]) then begin c[a[k,1],i]:=false; c[a[k,2],i]:=false; c[a[k,3],i]:=false; d[k]:=i; dfs(x+1); d[k]:=0; c[a[k,1],i]:=true; c[a[k,2],i]:=true; c[a[k,3],i]:=true; end; end; end; begin init;time:=0;ans:=-1; dfs(1); writeln(ans); close(input);close(output); end.

本文地址:https://www.39baobao.com/show/39_380486.html

以上内容来自互联网,请自行判断内容的正确性。若本站收录的信息无意侵犯了贵司版权,请联系我们,我们会及时处理和回复,谢谢.

以下为关联文档:

如何上网高效率宽带路由优化技巧放送上网冲浪,那么我们就少不了和宽带路由器打交道,但是在我们使用的过程中,很少会将目光放在它的上面,即使是网络出现了故障,相信也很少有人会认为这些故障是和路由器有关。其实,路由...

关系代数表达式的优化算法关系表达式的优化过程:输入一个关系表达式的语法树;输出一个计算该表达式的程序。 方法: 1. 利用关系代数等价变换规则4(选择串接定理)把形如 σ-F1ùF2。。。ùFn ( E ) 等价变换...

一种入侵检测模式算法新技术日前,启明星辰公司在IDS/IPS产品中成功地研制和实现了一种高效的自适应模式匹配VAPM方法(Venus Adaptive Pattern Match)。该方法根据网络攻击指纹(模式)特征和协议变量特征...

FDK算法中一种新的插值方法【摘要】 针对在FDK算法的反投影过程中,各个体素在探测器上投影分布的特点,本文提出一种新的插值方法。该方法根据体素投影的特点,采用在重建过程中,根据其在不同扫描角度下在各...

C问题:查找算法:程序要求根据文件中给定的数据设定一个高效的你好,很高兴为你解答! 我觉得是查找一篇文章中某个单词数出现的次数,但是你题目的要求是查找字符串出现的次数,所以我还是按你的题意来写的 还有,我并不赞同楼上那些用C风格字符...

如何打造高效课堂优化课堂教学模式如何构建高效课堂教学模式 从学生角度来讲,高效课堂应具备以下两个条件: 一是学生对三维教学目标的达成度要高。二是在实现这种目标达成度的过程中,学生应主动参与并积极思考。...

欧洲六大语言哪一种更容易学呢欧洲的主要六种语言分别为英语、法语、德语、意大利语、西班牙语、俄语。容易学和难学都是相比较而言的。意大利语: 概况:拼写中存在开闭口两个变音符号,兼以标示重音。拼读比...

专四考试有哪些好而高效的技巧啊2. 非语言能力方面 加强记忆和速记能力。有时候,听的内容都懂了,但由于记忆的问题或时间的问题没写下来,因此在平时的训练中,有意识地不是以单个的词而是以意群为单位进行理解和...

我QQ是534193499想向你请教matlab的粒子群算法我是做这方面的研究的,我给你一个我编的代码,完全可以运行,是求函数极值的。 %% 该代码为基于变异粒子群算法的函数极值寻优算法 %% 清空环境 clc clear %% 参数初始化 %粒子群...