No5 Bible(神转折小说)

%%蜂群算法pso%%


%%------初始格式化-----------%%

%--part1:创世--%


clc;

%第一日,上帝说要有光,于是便有了光

clear all;

%第二日,上帝说诸水之向要有空气隔开

format long;

%第三日,上帝说普天之下的水要汇聚在一处,让旱地露出来

%......

%%------初始化蜂群-----------%%

%--part2:预谋--%

%世间本是混沌,直到某日,上帝厌恶了世间的恶,企图降下滔天的洪水清洗人间的罪。

N=40;

%米伽耶劝诫上帝,要相信人间尚有善意可循。便创造了40个名为查拉图斯特拉(查)的化身,希望找到克服原罪的方法教会世人,便可获救赎。

D=10;

%上帝为米伽耶指引道:人间有10宗罪行不可饶恕,去让去他们去人间克服这10宗罪行,便可的获得救赎。

for i=1:N

%米伽耶告诉每个名为查拉图斯特拉的化身:“你们生而为人,具有人的肉体,却被我赋予了神的智慧和灵性。”

for j=1:D

%“你们每位,皆背负着人间10种罪行中的一种。”

x(i,j)=randn;

%米伽耶告诉每个查拉图斯特拉:“你们将被我随机派往不同的人生、踏上不同的旅途、去扮演不同的人。”

v(i,j)=randn;

%“唯有当你们中都某一位领悟了人生的真谛、体会到神性之时,便可找到真理达到神的境界 。”

end

%然而查拉图斯特拉作为神性的代理。却受到了米伽耶的诅咒,将永生无法窥见真理的全貌。

end

%米伽耶杀死了上帝

%%------定义每只蜂的状态-----------%%

%--part3:流亡--%

for i=1:N

%一位查拉图斯特拉逃往了人间

p(i)=fitness2(x(i,:),D);

%这时他在林中遇到一位老者向他说 “上帝已死,寻找救赎的道路不过是枉然。”

y(i,:)=x(i,:);

%查叹息道:“我所追寻的并非是已死上帝的真理,我将要发现的是属于我自己的真理啊”便坚定的继续向前走去。

end



pg=x(1,:);

%路旁的尼采高呼着 超越者查拉图斯特拉啊 你要的不是结果,而是意志和态度

for i=2:N

%另一位 读者 扮演着 查拉图斯特拉 从高处走来

if fitness2(x(i,:),D)

%查拉图斯特拉深知自己无法得到真理的全貌,但是读者可以从自己的一生中获得经验

pg=x(i,:);

%因此每个查拉图斯特拉都将自己的故事告诉路边的尼采

end

%尼采走出了森林

end

%他拿着所有查拉图斯特拉的记忆,准备打破上帝的诅咒,复活查拉图斯特拉

%%------蜂群搜索得出最优值---------%%

%--复仇--%

%尼采的本子上记载着复活 查拉图斯特拉 所需的:

w=0.7298; %本我

c1=1.4962; %自我

c2=1.4962; %超我

MaxDT=1000; %时间

eps=10^(-6); %理想

for t=1:MaxDT %新生的人类睁开了双眼

for i=1:N %此刻的他 既不是 读者 也不是 查拉图斯特拉

v(i,:)=w*v(i,:)+c1*rand*(y(i,:)-x(i,:))+c2*rand*(pg-x(i,:)); %他每走一步

x(i,:)=x(i,:)+v(i,:); %都在创造着新的自己

if fitness2(x(i,:),D)

p(i)=fitness2(x(i,:),D); %“那么神所创造的 虚伪、无聊的真理 不要也罢”

y(i,:)=x(i,:); %“我就是我的真理”

end %“任凭是神也无法撼动我的存在”

if p(i)

pg=y(i,:); %而是借由尼采复活查拉图斯特拉之际 也复活了自己

end %他成为了新的上帝

end %此刻的他 既是 上帝 也是 查拉图斯特拉

Pbest(t)=fitness2(pg,D); %他举起双手

end %在世间降下了洪水

%一切又陷入了混沌

你可能感兴趣的:(No5 Bible(神转折小说))