智能优化算法:晶体结构算法-附代码

智能优化算法:晶体结构算法


摘要:晶体结构算法(Crystal Structure Algorithm ,CryStAl)是于2021年提出的一种新型智能优化算法。该算法的主要灵感来源于从点阵点添加基形成晶体结构的基本原理。具有结构简单,收敛速度快,寻优能力强的特点。

1.算法原理

众所周知,固体矿物的组成成分(分子、原子或离子)在三个空间方向上有规律地重复排列或具有晶体顺序,称为晶体。晶体固体具有高度多样性,可以具有各向同性或各向异性特性。晶体的基本成分是“晶格”,它代表预定义空间中的周期性点阵列,尽管它不能定义材料中原子的特定位置。另一方面,原子在晶体结构中的位置由与每个晶格点相关联的“基”决定。由于晶格只决定晶体的整体形状,考虑到自然界存在无限几何形状,因此可以组合不同的几何形状。基于结晶学中的“基”概念,角上的所有晶体都被视为主晶体,即 C r m a i n Cr_{main} Crmain,其由最初创建的晶体(候选溶液)随机确定。具有最佳配置的晶体被确定为 C r b Cr_b Crb,而随机选择的晶体(忽略当前个体)的平均值用 F c F_c Fc表示。为了更新候选解在搜索空间中的位置,基于基本格原理,得出以下四种更新过程:

(1)简易隔室:
C r n e w = C r o l d + r C r m a i n (1) Cr_{new}=Cr_{old}+rCr_{main} \tag{1} Crnew=Crold+rCrmain(1)
(2)包含最优晶体的隔室:
C r n e w = C r o l d + r 1 C r m a i n + r 2 C r b (2) Cr_{new}=Cr_{old}+r_1Cr_{main}+r_2Cr_b \tag{2} Crnew=Crold+r1Crmain+r2Crb(2)
(3)包含平均晶体的隔室:
C r n e w = C r o l d + r 1 C r m a i n + r 2 F c (3) Cr_{new}=Cr_{old}+r_1Cr_{main}+r_2F_c \tag{3} Crnew=Crold+r1Crmain+r2Fc(3)
(4)包含最优晶体及平均晶体的隔室:
C r n e w = C r o l d + r 1 C r m a i n + r 2 C r b + r 3 F c (4) Cr_{new}=Cr_{old}+r_1Cr_{main}+r_2Cr_b+r_3F_c \tag{4} Crnew=Crold+r1Crmain+r2Crb+r3Fc(4)
其中 r , r 1 , r 2 , r 3 r,r_1,r_2,r_3 r,r1,r2,r3均为[-1,1]内的随机数。

算法伪代码

Create random values for initial positions of initial crystals
Evaluate fitness values for each crystal
while(t<maximum number of iterations)
	for i = 1:number of initial crystals
		Create Crmain
		Create new crystals by Eq(1)
		Create Crb
		Create new crystals by Eq(2)
		Create Fc
		Create new crystals by Eq(3)
		Create new crystals by Eq(4)
		if new crystals violate bundarcy conditons
			control the positon constrains for new crystals and amend them
		end if
		Evaluate the fitness values for new crystals
		Update Global Best(GB) if a better sloution is found 
	end for
	t=t+1
end while

2.实验结果

请添加图片描述

3.参考文献

[1]Talatahari Siamak,Azizi Mahdi,Tolouei Mohamad,Talatahari Babak,Sareh Pooya. Crystal Structure Algorithm (CryStAl): A Metaheuristic Optimization Method[J]. IEEE ACCESS,2021,9:

4.Matlab

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

智能算法研学社(Jack旭)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值